java入门详细讲解第十四章
TP14 带参数的方法(二) ACCP 6.0 S1-1-使用Java理解程序逻辑 PPT课件

Score sc=new Score();
public float getAvg(Students stu){
float avg=0;
float avg=0;
stu.java=80;
avg=(stu.java +stu.database
stu.database=95;
+stu.html )/3;
stu.html=77;
练习——查找会员积分
需求说明:
循环输入多个会员的信息,根据会员编号,查找 会员积分
完成时间:25分钟
共性问题集中讲解
共性问题集中讲解
常见调试问题及解决办法 代码规范问题
总结
基本数据类型和引用数据类型作为方法参数,
public class 在Tes传tSc递ore时{ 有什么不同之处?
public static void main(String[] args省p)u{略bl内ic存cl分as配s Score {
三门课成绩 Score scr=enteuwrnSacvogr;e();
float }avg=0;
s}tu.java=80; 返回调结用果方法,传递参数,
stu.database=95;
返回结果
stu.html=77;
avg=sc.getAvg(stu);
System.out.println("该学生的平均分为:"+avg);
Students stu=new Students();
//计算平均分,对象作为参数
Score sc=new Score();
public float getAvg(Students stu){
float avg=0;
Java第十四章全解

Liang, Introduction to Java Programming, Eighth Edition, (c) 2011 Pearson Education, Inc. All rights reserved. 0132130807
2
学习目标
区分Swing和AWT的不同(第12.2节)。 描述Java GUI API的层次体系结构(第12.3节)。
辅助类都不是Component的子类。 它们用来描述GUI组件的属性,例 如:图形的内容、颜色、字体以及 大小尺寸等。
JComponent
JPanel
在 javax.swing 包中的 Swing 组件
轻量级
Liang, Introduction to Java Programming, Eighth Edition, (c) 2011 Pearson Education, Inc. All rights reserved. 0132130807
JLayeredPane JPopupMenu
JMenuBar JTable
JTableHeader
JInternalFrame
JProgressBar
JSpinner
Liang, Introduction to Java Programming, Eighth Edition, (c) 2011 Pearson Education, Inc. All rights reserved. 0132130807
GUI类的层次结构(Swing)
Dimension Font FontMetrics Object Color Graphics Component
* LayoutManager 1 在包 java.awt 中的类 重量级
Java17第十四章2-界面设计swing

JPopupMenu:弹出式菜单组件
安卓越科技(北京)有限公司
18
import java.awt.Color; import javax.swing.*; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; public class PopupMenuTest { static JPopupMenu popup=null; public static void main(String[] args) { JFrame frame = new JFrame(); frame.setBounds(200,300,200, 300); frame.setTitle("我的第一个小板凳"); //设置不允许调整窗口的大小 frame.setResizable(false); frame.setBackground(Color.ORANGE); popup = new JPopupMenu(); popup.add("徐明华"); popup.add("张燕君"); popup.add("徐诗佳"); popup.add("王子昊"); popup.setName("右击菜单"); frame.add(popup);//在窗体上加右击菜单 frame.addMouseListener(new MouseAdapter() { public void mouseReleased(MouseEvent e) { if(e.getButton() == MouseEvent.BUTTON3){ popup.show(e.getComponent(), e.getX(), e.getY()); } } });//添加事件监听器 frame.setVisible(true);//显示窗体}}
java 第八版 中文版课件 第十四章

• 事件模型三要素的设计规范 • 事件源: EventSource类 • 事件对象:EventObject类 • 事件监听: EventListener接口 • 事件模型三要素的特性 – java.util.EventObject是所有事件对象的根 – java.util.EventListener是所有事件监听的根,它是一个标 记接口,在该接口中无方法 – 在java.util中,EventObject事件对象类是所有事件对象的 父类,事件对象要继承它;一个事件对象中会封装事件源 对象。如EventObject(source)事件对象的构造中有source 事件源;EventObject还有一个getSource()方法获得事件 源
AWT事件模型的概念和特点
– AWT事件模型 • awt事件模型:sun公司设计定义的java事件模型的 应用。同样包含三要素:事件源,事件对象,事件 监听 • awt事件模型是java的GUI组件的事件模型。 • awt设计了很多组件,不同组件会有不同的事件发生, 设计了不同的事件,不同的事件也就有不同的监听 器来处理
单选/复选/下拉选框的选项变化发生该事件 文本框/文本域/其他文字组件的文字变化发生该事件 容器事件(往容器中加/删组件时发生该事件) 光标事件(获得/失去光标焦点时发生该事件) 输入事件,分为键盘输入/鼠标输入
ComponentEvent
FocusEvent InputEvent WindowEvent
– 事件源负责事件的生成,事件对象可以注册监听 – 一个监听者是监听某一个事件发生,然后处理事件 – 监听者通过事件来联系事件源 – 一个监听者可以监听多个事件源 – 一个事件源的事件也可由多个监听者来监听 – 事件源发生事件给监听处理 • 实现java事件模型的步骤 – 写一个类继承EventObject,作为事件 – 写一个类实现EventListener接口,作为监听器并监听。 – 在其他类/监听类中发起事件,然后交给监听去处理 – 写一个类继承EventSource,作为事件源类,并向其注册 监听器。
JAVA自学教程(完整版)PPT课件(2024)

二分查找
针对有序数组,每次取中间元 素与目标元素比较,缩小查找 范围
12
03 面向对象编程基础
2024/1/27
13
类与对象的概念
类的定义
类是对象的模板,它定 义了对象的属性和方法 。
2024/1/27
对象的概念
对象是类的实例,具有 类定义的属性和行为。
类与对象的关系
类是对象的抽象描述, 而对象是类的具体实现 。
2024/1/27
32
Socket通信原理及示例
Socket通信原理
理解Socket通信的基本原理,掌握Socket 类和ServerSocket类的使用。
TCP编程
学习基于TCP协议的Socket通信,实现客户 端与服务器之间的数据传输。
多线程处理
掌握多线程在Socket通信中的应用,提高服 务器的并发处理能力。
TreeSet类的特点和使用
TreeSet是Set接口的另一个常用实现类,它基于红黑树实 现。TreeSet会对元素进行排序,因此它适用于需要排序的 场景。
26
Map接口及其实现类
01
Map接口的定义和特 点
Map接口表示一种键值对的映射关系 。Map中的每个元素都包含一个键和 一个值,键在Map中是唯一的。
学习ReentrantLock锁的使用,了解 公平锁与非公平锁的区别。
2024/1/27
等待/通知机制
掌握Object类的wait()、notify()和 notifyAll()方法的使用,实现线程间 的通信。
死锁与避免
了解死锁的概念及产生条件,学习如 何避免死锁的发生。
31
网络编程基础
网络编程概述
ArrayList类的特点和使用
Java 2实用教程课件(第3版第14章)

14.2绘制基本图形
• 1.直线 • drawLine(int x1,int y1,int x2,int y2) 绘制从起点(x1,y1)到终点 (x2,y2)的直线段 • 2.矩形 • drawRect (int x,int y,int w,int h) 绘制矩形 • fillRect (int x,int y,int w,int h) 填充矩形 • 矩形的左上角的坐标由参数x、y指定,矩形的宽和高由参数w,h指 定。 • 3.圆角矩形 • drawRoundRect(int x,int y,int w,int h,int arcW,int arcH) 绘制圆 角矩形 • fillRoundRect(int x,int y,int w,int h,int arcW,int arcH) 填充圆角 矩形 • 参数arcW、arcH指定圆角的尺寸,见图14.1中的4个黑角部分。
• Toolkit类是一个抽象类,不能用构造方法直接创建 这样对象,但Java运行环境提供了一个Toolkit对 象,任何一个组件调用getToolkit()方法可以返 回这个对象的引用。Tollkit类有一个获取图像的方 法getImage(String s)。 • Graphics 类提供的方法: 绘制的Image对象;x、y是要绘制指定图像的矩形 的左上角所处的位置,observer是加载图像时的图 像观察器。
14.5 Java 2D
• Java1.2给出了一个新类Graphics2D,它是 Graphics类的子类。一个Graphics2D对象把 直线、圆等作为一个对象来绘制,也就是说, 如果想用一个Graphics2D类型的“画笔”来 画一个圆的话,就必须先创建一个圆的对象。 我们仍需使用paint(Graphics g)方法来绘制, 只需将Graphics对象强制转化为Graphics2D 对象即可。
Java Web程序设计任务教程第14章 传智书城前台程序设计
选购商品 继续购物 提示页面 否 是否登录 清空购物车 是 查看购物车 结算入口 填写订单信息 生成订单信息 在线支付
14.2 购物车模块
【任务目标】 通过所学知识和购物车功能及流程的描述,实现在购物车中添加商品和删除购 物车中指定商品的功能。 【实现步骤】
①向购物车中添加商品
②删除购物车中指定商品
购物车模块
添 加 选 购 的 新 商 品
自 动 更 新 商 品 数 量
清 空 购 物 车
删 除 购 物 车 中 单 件 商 品
自 动 调 整 商 品 总 价 格
生 成 订 单 信 息
14.2 购物车模块
购物车模块包括管理购物车中的商品和生成订单信息的功能,下面通过一幅图
来描述购物车的功能流程,具体如下图所示。
进入主页选购商品是否登录查看购物车继续购物清空购物车结算入口提示页面生成订单信息填写订单信息用户在线支付142购物车模块任务目标通过所学知识和购物车功能及流程的描述实现在购物车中添加商品和删除购物车中指定商品的功能
第十四章 传智书城前台程序设计
• • •
用户注册和登录模块 购物车模块 图书信息查询模块
14.1 用户注册和登录模块
【任务目标】 在传智书城网站上,用户只有注册账号并登录后才可以购买图书,那么首次进 入网站的用户就需要先注册账号。 【实现步骤】
①编写注册页面
②创建Servlet ③编写Service层方法 ④创建邮件工具类
14.1 用户注册和登录模块
案例代码
任务案例
接下来,通过具体代码实现
14.2 购物车模块
案例代码
任务案例
接下来,通过具体代码实现
购物车的基本功能,请查看教材 【任务14-3】。
JAVA自学教程(完整版)PPT课件
而在Java语言中,Java自带的虚拟机很好地实现了跨平台 性。Java源程序代码经过编译后生成二进制的字节码是与平台 无关的,但是可被Java虚拟机识别的一种机器码指令。Java虚 拟机提供了一个字节码到底层硬件平台及操作系统的屏障,使 得Java语言具备跨平台性。
2. 面向对象
面向对象是指以对象为基本粒度,其下包含属性和方法。 对象的说明用属性表达,而通过使用方法来操作这个对象。面 向对象技术使得应用程序的开发变得简单易用,节省代码。 Java是一种面向对象的语言,也继承了面向对象的诸多好处, 如代码扩展、代码复用等。
图1.8 Applet显示“Hello World!”
习题
1. 简述Java的特点。 2. 简述Java的分类情况。 3. 进行Java环境的安装和配置。 4. 编写应用程序,屏幕上输出“欢迎来到Java世界!”。 5. 编写Applet,输出“欢迎来到Java世界!”。
第2章 Java基本语法
1.4 JDK包的下载与安装
Java Develop Kit简称为JDK,是Sun公司免费发行的软件包, 可以从Sun网站免费下载,也可以从其它国内 地址下载。JDK版本从1.02开始,目前版本发展到1.4,其中高 级版本对低级版本实现向下兼容。运用这个软件包,就可以对 Java源程序进行编译和运行。本书中下载使用的JDK包为j2sdk1_4_0_012-windows-i586.exe。 下载后双击图标,即可进行安装, 默认的安装目录为C:\j2sdk1.4.0_01。本书作者将安装目录改为 D:\j2sdk1.4.0_01。
图1.4 编辑lib变量
选中path变量,单击“编辑”按钮,弹出标题为“编辑用 户变量”的对话框,如图1.5所示。在变量值一栏的最后添加 “; D:\j2sdk1.4.0_01\bin”,“;”表示与前面的各项隔开,后面的 路径是JDK包的安装路径下的bin目录。图1.5为作者修改path变 量的情况,注意你的安装路径可能与作者的有所不同,同样要 以你的安装路径为基准进行修改。
Java第14章PPT课件
2021/3/12
8
14.3过滤流
public final void writeBoolean(boolean v) throws IOException public final void writeShort(int v) throws IOException public final void writeChar(int v) throws IOException public final void writeInt(int v) throws IOException public final void writeLong(long v) throws IOException public final void writeFloat(float v) throws IOException public final void writeDouble(double v) throws IOException public final void writeBytes(String s) throws IOException
public static void main(String[] args) {
File f1 = new File("D:\\","1.txt");
File f2 = new File("D:\\test");
//f1基本信息输出
System.out.println("f1 details:");
2021/3/12
11
PrintStream
PrintStream(OutputStream out) PrintStream(OutputStream out,boolean
黑马程序员JAVA编程阶梯:基础篇之第十四章
【济南中心】JAVA编程阶梯:基础篇之第十四章正则表达式:指一个用来描述或者匹配一系列符合某个语法规则的字符串的单个字符串。
其实就是一种规则。
有自己特殊的应用。
作用:比如注册邮箱,邮箱有用户名和密码,一般会对其限制长度,这个限制长度的事情就是正则表达式做的。
正则对字符串的常见功能操作:1,匹配。
使用String类中的matches方法。
结果是boolean2,切割。
使用String类中的split方法。
结果String[]3,替换。
使用String类中的replaceAll(regex ,string); 结果是一个新的字符串4,获取。
其他三个功能内部最终使用的都是Pattern正则表达式对象现在需要其他功能时,字符串String类中没有对应的方法,只能找Pattern对象正则表达式的常见组成规则:字符、字符类、预定义字符类、边界匹配器、数量词在这简单的介绍各个类型,具体的可以查找Api文档Pattern类字符x 字符x。
举例:'a'表示字符a\\ 反斜线字符。
\n 新行(换行)符('\u000A')\r 回车符('\u000D')字符类[abc] a、b 或c(简单类)[^abc] 任何字符,除了a、b 或c(否定)[a-zA-Z] a到z 或A到Z,两头的字母包括在内(范围)[0-9] 0到9的字符都包括预定义字符类. 任何字符。
我的就是.字符本身,怎么表示呢? \.\d 数字:[0-9]\w 单词字符:[a-zA-Z_0-9]在正则表达式里面组成单词的东西必须有这些东西组成边界匹配器^ 行的开头$ 行的结尾\b 单词边界就是不是单词字符的地方。
举例:hello world?haha;xixiGreedy 数量词X? X,一次或一次也没有X* X,零次或多次X+ X,一次或多次X{n} X,恰好n 次X{n,} X,至少n 次X{n,m} X,至少n 次,但是不超过m 次常见功能:(分别用的是谁呢?)判断功能String类的public boolean matches(String regex)分割功能String类的public String[] split(String regex)替换功能String类的public String replaceAll(String regex,String replacement) 获取功能Pattern和MatcherPattern p = pile("a*b");Matcher m = p.matcher("aaaaab");m.find():查找存不存在m.group():获取刚才查找过的数据[Java] 纯文本查看复制代码?01020304050607 /*** 对QQ号进行校验。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Java面向对象程序设计
文件操作相关类或接口
表14.3
File类 File类
表14.4 【例14.2】、【例14.3】、【例14.4】
文件过滤器接口
【例14.5】
清华大学出版社
Java面向对象程序设计
随机文件操作
RandomAccessFile 构造方法: RandomAccessFile(File file, String mode) RandomAccessFile(String name, String mode)
DataOutputStream do = new DataOutputStream(new BufferedOutputStream(new FileOutputStream(f)))
【例14.7】、 【例14.8】 清华大学出版社
Java面向对象程序设计
对象串行化与持续性
对象串行化的含义 对象持续性的含义 【例14.9】 】
清华大学出版社
Java面向对象程序设计
Java的标准输入输出流 Java的标准输入输出流
标准输入,对象是键盘,Java对应类是System.in。 标准输出,对象是屏幕,Java对应类是System.out。 标准错误输出,对象也是屏幕,Java对应类是System.err。 标准输入输出的转向,见JDK中的System类的静态方法 。
【例14.1】从键盘输入字符,并对字符数目进行统计。 清华大学出版社
Java面向对象程序设计
字节流与字符流
清华大学出版社
Java面向对象程序设计
字节流
InputStream,方法见表14.1
OutputStream ,方法见表14.2。
清华大学出版社
Java面向对象程序设计
常用字节流
文件流 FileInputStream和FileOutputStream 字节数组流ByteArrayInputStream 和ByteArrayOutputStream 管道流 PipedInputStream和PipedOutputStream 对象流 ObjectOutputStream和ObjectInputStream 对象流 ObjectOutputStream和ObjectInputStream 缓冲流BufferedInputStream和BufferedOutputStream 数据流DataInputStream和DataOutputStream 打印流 PrintStream 清华大学出版社
主要方法 【例14.6】 清华大学出版社
Java面向对象程序设计
流的装配与串行化
清华大学出版社
Java面向对象程序设计
流的装配
DataInputStream di = new DataInputStream(new BufferedInputStream(new FileInputStream(f)))
标识 r rw rws rwd 含义 只读 读写 同步读写 同步读写 说明 任何写操作都将抛出IOException。 文件不存在时会创建该文件,文件存在时,原文件内容不变,通过写操作 改变文件内容。 任何写操作的内容都被直接写入物理文件,包括文件内容和文件属性。 任何内容写操作都直接写到物理文件,但不包括文件属性内容的修改。
清华大学出版社
Java面向对象程序设计
字符流
Reader和Writer
字节流到字符流的转化
输入字节流转为字符流需要用到inputstreamReader的构造方法 输出字符流转为字节流用到OutputStreamWriter或PrintWriter的构造方法
清华大学出版社
Java面向对象程序设计
文件操作
清华大学出版社
Java面向对象程序设计
第十四章 I/0输入输出
清华大学出版社
Java面向对象程序设计
主要内容: 主要内容:
数据流的基本概念 字节流与字符流 文件操作 流的装配与串行化
清华大学出版社
Java面向对象程序设计
数据流的基本概对象程序设计
流的分类
流从流动方向上看:一般分为输入流和输出流 。 从读取类型上分:一般分为字节流和字符流。 流从发生的源头可以分为节点流和过滤流类 。