Java程序设计教程及实验指导 课件第3章 类与对象.ppt
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java程序设计教程及实验指导 课件第3章 类与对象 Java 程序设计 教程 实验 指导 课件 对象
- 资源描述:
-
1、3.1 面向对象概述 面向过程方法是围绕实现处理功能的“过程”来构造系统的。然而,用户需求的变化大部分是针对功能的,因此,这种变化对于基于过程的设计来说是灾难性的。用这种方法设计出来的系统结构常常是不稳定的,用户需求的变化往往造成系统结构的较大变化,从而需要花费很大代价才能实现这种变化。3.1 面向对象概述 面向对象的基本思想是认为世界是由各种各样具有自己的功能和内部状态的对象所组成;不同对象之间的相互作用和通信构成了完整的现实世界。因此,软件系统也是由一些具有若干内部状态和功能的对象组成,对象之间通过合作(调用对方的功能)来完成系统功能。3.1.1 面向对象的三要素 类、对象和继承是面向对象
2、的三要素。1、对象、对象例如:一个时钟对象例子对象的属性:属性名 属性值时 18分 30秒 10对象的行为:设置时、设置分、设置秒、显示时间。3.1.1 面向对象的三要素 2、类、类图3-1 时钟类的抽象3.1.1 面向对象的三要素+setHour()+setMinute()+setSecond()+dispTime()-run()-hour:int-minute:int-second:intClock图3-2 时钟类的类图hour:int=18minute:int=30second:int=10北京时钟:Clockhour:int=6minute:int=30second:int=10纽约时
3、钟:Clock图3-3 时钟类的两个对象图3.1.1 面向对象的三要素 3、继承、继承表示继承关系图3-4 类的继承体系人人教教师师学学生生任任课课教教师师教教辅辅人人员员本本科科生生研研究究生生父类子类3.1.2 面向对象的特性 1、封装性、封装性3.1.2 面向对象的三大特性 2、继承性、继承性 继承(Inheritance)是一种联结类与类的层次模型。继承性是指特殊类的对象拥有其一般类的属性和行为。继承意味着“自动地拥有”,即特殊类中不必重新定义已在一般类中定义过的属性和行为,而它却自动地、隐含地拥有其一般类的属性与行为。3.1.2 面向对象的三大特性 3、多态性(、多态性(Polymo
4、rphism)多态有编译时多态和运行时多态。编译时多态是通过方法重载实现;运行时多态是通过方法覆盖实现(子类覆盖父类方法)。通常说的多态是指运行时多态性,是指同一个继承体系中不同类的对象收到相同的消息时产生多种不同的行为方式。3.2 类和对象 3.2.1 类的定义及构成类定义的一般形式类定义的一般形式public class /下面是属性定义public|protected|private ;/其它属性定义/下面是方法定义 public|protected|private 方法名(类型 参数1,类型 参数2,)/方法体/其它方法定义3.2.1 类的定义及构成示例:定义一个简单的示例:定义一个简
5、单的Person类类 class Person private String name;private int age;public void setName(String name)this.name=name;public void setAge(int age)this.age=age;public void speak()System.out.println(I am+name);System.out.println(I am+age+years old);3.2.2 对象的生成生成对象一般有两种方式:方式方式1:类名 对象引用名=null;/声明对象引用对象引用名=new 类名();
6、/实例化对象 例如:Person p1=null;p1=new Person();方式方式2:类名 对象引用名=new 类名();/声明对象引用和实例化对象一步完成 例如:Person p1=new Person();注意:注意:对象引用不是对象,声明对象引用只是分配一个引用空间(用来存放对象的地址)。3.2.3 对象的使用public class ObjectCreateDemopublic static void main(String args)Person p1=new Person();p1.setName(张三);p1.setAge(20);p1.speak();/p1.name=
7、张三;/错误,不能访问对象的 非public成员/p1.age=20;/错误,不能访问对象的 非public成员3.2.3 对象的使用3.2.4 对象的清除public class ObjectCreateDemopublic static void main(String args)Person p1=new Person();/p1指向一个新建的对象Person p2=new Person();/p2指向一个新建的对象p1.setName(张三);p1.setAge(20);p2.setName(李四);p2.setAge(30);System.out.println(p1指向地址:+p1
8、);System.out.println(p2指向地址:+p2);p2=p1;/让p2指向p1所指向的对象,p2原来所指向的对象成为了垃圾对象System.out.println(在p2=p1后,p2指向地址:+p2);3.2.4 对象的清除3.2.4 对象的清除程序的运行结果如下:p1指向地址:Person5c8da962p2指向地址:Person512ddf17在p2=p1后,p2指向地址:Person5c8da962 3.3 成员方法3.3.1 成员方法的定义public|protected|private 方法名(类型 参数1,类型 参数2,)/方法体例如:public void pr
展开阅读全文
