第三章Java面向对象程序设计 3.1Java的类和对象 °3.2域和方法 ●3.3访问控制符 3.4继承 °3.5方法的继承、覆盖与重载 °3.6上转型对象 ●3.7接口 3.8包
第三章 Java面向对象程序设计 ⚫ 3.1 Java的类和对象 ⚫ 3.2 域和方法 ⚫ 3.3 访问控制符 ⚫ 3.4 继承 ⚫ 3.5 方法的继承、覆盖与重载 ⚫ 3.6 上转型对象 ⚫ 3.7 接口 ⚫ 3.8 包
3.1Java的类和对象 类 >类是Java语言的最基本概念,是组成Jav程序的基本要素 >类是Java的执行单位,Java运行的就是Java类本身; >类封装了该类对象的变量和方法。 对象 >对象是类的实例化,对象的创建是通过对象构造方法来实 现的; >我们可以生成多个对象,通过消息传递来进行交互,最终 完成复杂的任务; >消息传递是指激活指定的某个对象的方法,以改变它的状 态或使其产生一定的动作
3.1 Java的类和对象 ⚫ 类 ➢类是Java语言的最基本概念,是组成Java程序的基本要素 ➢类是Java的执行单位,Java运行的就是Java类本身; ➢类封装了该类对象的变量和方法。 ⚫ 对象 ➢对象是类的实例化,对象的创建是通过对象构造方法来实 现的; ➢我们可以生成多个对象,通过消息传递来进行交互,最终 完成复杂的任务; ➢消息传递是指激活指定的某个对象的方法,以改变它的状 态或使其产生一定的动作
类和对象 class Car i int color numbers int door number int speed 现实生活 中的对象 void brake0{…} 计算机中 void speedup i.3 void slow down0{….} 的对象的原型
class Car { int color_number; int door_number; int speed; void brake() { … } void speedUp() {…}; void slowDown() { … } } 计算机中 的对象的原型 现实生活 中的对象 类和对象
类和对象 ●什么是类? °类是描述对象的“基本原型”,它定义一种对 象所能拥有的数据和能完成的操作,在面向对 象的程序设计中类是程序的基本单元。 程序中的对象 variables 是类的一个实例, 是一个软件单元 它由一组结构化的 数据和在其上的 组操作构成。 methods
类和对象 ⚫ 什么是类? ⚫ 类是描述对象的“基本原型”,它定义一种对 象所能拥有的数据和能完成的操作,在面向对 象的程序设计中,类是程序的基本单元。 ⚫ 程序中的对象 是类的一个实例, 是一个软件单元, 它由一组结构化的 数据和在其上的一 组操作构成。 variables methods
类和对象 变量:即指对象的所知道的状态 ●方法:指对象的功能单元 ●什么是消息? ●软件对象通过相互间传递消息来相互作用和通信 一个消息由三部分组成 message 1.接受消息的对象 2.要完成方法的名字 3.方法需要的参数 对象B 对象A
类和对象 ⚫ 变量:即指对象的所知道的状态 ⚫ 方法:指对象的功能单元。 ⚫ 什么是消息? ⚫ 软件对象通过相互间传递消息来相互作用和通信 ⚫ 一个消息由三部分组成: – 1. 接受消息的对象 – 2. 要完成方法的名字 – 3. 方法需要的参数 对象B 对象 A message
3.1.1系统定义的类 ●Java程序设计就是定义类的过程,它分为两大类: >系统定义的类,即Java类库中的类; >用户程序自定义的类。 要提高编程效率和质量,必须熟练掌握尽可能多 的Java类库,根据功能的不同,Java类库被划分 成若干不同的包,每个包中都有不少具有特定功 能和关系的类和接口
3.1.1 系统定义的类 ⚫ Java程序设计就是定义类的过程,它分为两大类: ➢系统定义的类,即Java类库中的类; ➢用户程序自定义的类。 ⚫ 要提高编程效率和质量,必须熟练掌握尽可能多 的Java类库,根据功能的不同,Java类库被划分 成若干不同的包,每个包中都有不少具有特定功 能和关系的类和接口
常用包(一) 1.java.lang包 >该包是Java语言的核心类库,包含了运行Java程序必不可 少的系统类,如基本数据类型、基本数学函数、字符串处 理、线程、异常处理类等。 >每个Jav程序运行时,系统都会自动引入java.lang包, 所以这个包的加载是缺省的。 2.java.io包 >该包是Java语言的标准输入/输出类库,包含了实现Java程 序与操作系统、用户界面以及其它Java程序做数据交换所 使用的类。 如基本输入/输出流、文件输入/输出流、过滤输入/输岀流、 管道输入/输出流、随机输入/输出流等
常用包(一) 1. java.lang包 ➢ 该包是Java语言的核心类库,包含了运行Java程序必不可 少的系统类,如基本数据类型、基本数学函数、字符串处 理、线程、异常处理类等。 ➢ 每个Java程序运行时,系统都会自动引入java.lang包, 所以这个包的加载是缺省的。 2.java.io包 ➢ 该包是Java语言的标准输入/输出类库,包含了实现Java程 序与操作系统、用户界面以及其它Java程序做数据交换所 使用的类。 ➢ 如基本输入/输出流、文件输入/输出流、过滤输入/输出流、 管道输入/输出流、随机输入/输出流等
常用包(二) 3.java.uti包 该包包含了Java语言中的一些低级的使用工具,如处理 时间的Date类、处理变长数组的 Vector类,实现栈和散列表 的 Stack类和 Hashtable类等 4. java. awt包 该包是Java语言用来构建图形用户界面((UI)的类库, 它包括了许多界面元素和资源,主要提供三方面的支持: >低级绘图操作,如 Graphics类等; >图形界面组件和布局管理,如 Checkbox类、 Container类 Layoutmanager接口等; 界面用户交互控制和事件响应,如 Event类
常用包(二) 3.java.util包 该包包含了Java语言中的一些低级的使用工具,如处理 时间的Date类、处理变长数组的Vector类,实现栈和散列表 的Stack类和HashTable类等。 4.java.awt包 该包是Java语言用来构建图形用户界面(GUI)的类库, 它包括了许多界面元素和资源,主要提供三方面的支持: ➢ 低级绘图操作,如Graphics类等; ➢ 图形界面组件和布局管理,如Checkbox类、Container类、 LayoutManager接口等; ➢ 界面用户交互控制和事件响应,如Event类
常用包(三) 5.java.awt. image包 该包用来处理和操纵来自网上的图片的Java工具 类库。 6.java.awt.per包 >该包的作用是使同一个Java程序在不同的软、硬 件平台上运行时,具有相同的用户界面; >它是程序代码和平台之间的中介,将不同的平台 包裹、隐藏起来,使之在用户面前呈现相同的面 貌 >该包是实现Java语言跨平台特性的手段之一
常用包(三) 5.java.awt.image包 该包用来处理和操纵来自网上的图片的Java工具 类库。 6.java.awt.peer包 ➢该包的作用是使同一个Java程序在不同的软、硬 件平台上运行时,具有相同的用户界面; ➢它是程序代码和平台之间的中介,将不同的平台 包裹、隐藏起来,使之在用户面前呈现相同的面 貌; ➢该包是实现Java语言跨平台特性的手段之一
常用包(四) 7.java. applet包 该包是用来实现运行于 Internet浏览器中的Java Applet的工具类库,它仅包含少量的几个接口和一个 非常有用的类:java. applet. Applet。 8.java.net包 该包是Java语言用来实现网络功能的类库, 主要包括: >底层的网络通信,如 Socke类、 Server Socket类 >编写用户自己的 Telnet、FTP、邮件服务等实现网 上服务的类; >用于访问 Internet上资源和进行CGI网关调用的类, 如URL等
常用包(四) 7.java.applet包 该包是用来实现运行于Internet浏览器中的Java Applet的工具类库,它仅包含少量的几个接口和一个 非常有用的类:java.applet.Applet。 8.java.net包 该包是Java语言用来实现网络功能的类库, 主要包括: ➢ 底层的网络通信,如Socket类、ServerSocket类; ➢ 编写用户自己的Telnet、FTP、邮件服务等实现网 上服务的类; ➢ 用于访问Internet上资源和进行CGI网关调用的类, 如URL等