java面向对象程序设计上.ppt_第1页
java面向对象程序设计上.ppt_第2页
java面向对象程序设计上.ppt_第3页
java面向对象程序设计上.ppt_第4页
java面向对象程序设计上.ppt_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

面向对象程序设计,面向对象的基本概念,类是对一类事物描述,是抽象的、概念上的定义。 对象是实际存在的该类事物的每个个体,是具体的,因而也称实例。,现实世界中的各种实体:如动物、人、房子、汽车等,每个实体都有属性和功能。 具有属性和行为能力的实体称为对象。 类是一组对象的数据类型,是创建对象的模板。,面向对象的基本概念,对象的基本概念,对象,客观世界的实体,对象就是一组变量和相 关方法的集合,其中变量表明 对象的状态,方法表明对象所 具有的行为。,类的基本概念,现实生活中的对象,可以将现实生活中的对象经过抽象,映射为程序中的对象。对象在程序中是通过一种抽象数据类型来描述的,这种抽象数据类型称为类。,class Person String name; int age; String sex; void say() void eat() void sleep() ,抽象数据类型,类,类是java中的一种重要的引用数据类型,是组成java程序的基本要素。它封装了一类对象的状态和方法,是这一类对象的原形。一个类的实现包括两个部分 类声明 类体。,类定义语句的一般形式为: 修饰符 class 类名 成员变量声明 / 类体 方法成员声明 ,类定义,类定义中必须要写类名,应该使用Java语言合法的标识符来命名 类名不能与java中已定义好的类名相同,类 体,类体定义如下: class 类名 修饰符 类型 变量名; /声明成员变量 修饰符 返回值类型 方法名(参数1,参数2,参数N) /变量声明 /语句 ,类的定义举例,class Car int color; int name; int speed; void brake() void speedUp() void slowDown() ,示例1 Person.java,方法声明,方法声明包括 方法名 返回类型 外部参数。 参数的类型可以是 简单数据类型 引用数据类型。,方法体,方法体是对方法的实现,它包括局部变量的声明以及所有合法的Java指令。方法体中声明的局部变量的作用域在该方法内部。若局部变量与类的成员变量同名,则类的成员变量被隐藏。,若局部变量与类的成员变量同名, 则类的成员变量被隐藏。,对象,类实例化可生成对象,对象通过方法调用来进行交互。一个对象的生命周期包括三个阶段 生成 使用 消除。,对象的生成,对象的生成包括 声明 实例化 初始化。 创建对象的一般形式为:,类名 对象名 = new 类名(),例:Person p1=new Person();,声明,声明并不为对象分配内存空间,而只是分配一个引用空间;对象的引用类似于指针,是32位的地址空间,它的值指向一个中间的数据结构,它存储有关数据类型的信息以及当前对象所在的堆的地址,而对于对象所在的实际的内存地址是不可操作的,这就保证了安全性。,实例化,运算符new为对象分配内存空间,它调用对象的构造方法,返回引用;一个类的不同对象分别占据不同的内存空间。,初始化,当一个变量被创建时,会对其中各种类型的成员变量自动按下表进行初始化赋值。,对象的使用,在创建了类的对象后,就可以对对象的各个成员进行访问,进行各种处理。访问对象成员的一般形式为:,对象名.数据成员名 对象名.成员方法名() / 方法名带圆括号,对象的使用举例,Person p = new Person(); p.setAge(18); System.out.println(“年龄“ + p.getAge(),示例2 TestPerson.java,对象的清除,当不存在对一个对象的引用时,该对象成为一个无用对象。Java的垃圾收集器自动扫描对象的动态内存区,把没有引用的对象作为垃圾收集起来并释放。因此,Java程序不用关系对象的清除问题。,类的嵌套,Date类 示例3 Date.java,class Person Date birthday; public void setbirthday(Date d) public Date getbirthday() ,构造方法是一种特殊的成员方法,它的特殊性反映在如下几个方面: 构造方法名与类名相同。 构造方法不返回任何值,也没有返回类型。 每一个类可以有零个或多个构造方法。 构造方法在创建对象时自动执行,一般不能显式地直接调用。,构造方法,构造方法举例,class Person . Public Person(String _name, int _age); name=_name; age=_name; ,方法的重载,方法的重载是指多个方法享有相同的名字,但是这些方法的参数必须不同,或者是参数的个数不同,或者是参数类型不同。返回类型不能用来区分重载的方法。,This引用句柄,构造方法的形式参数与类的成员变量名相同时用this.变量名的形式调用类的成员变量 在构造方法中调用其他重载的构造方法,用this(参数列表)的形式,使用static修饰符来修饰类的成员变量和方法成员,使它们成为静态成员,也称为类成员。静态成员存储于类的存储区,属于整个类,而不属于一个具体的类对象。,static修饰符,静态成员的使用,静

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论