• / 72
  • 下载费用:10 金币  

5.Java面向对象程序设计.ppt

关 键 词:
5.Java面向对象程序设计.ppt
资源描述:
第5章 面向对象程序设计,5.1 类(class),类是组成Java程序的基本元素,它封装了一系列的变量(即数据成员,也称为“域(field)”)和方法(即成员方法 method),是一类对象的原型。创建一个新的类,就是创建一个新的数据类型。实例化一个类,就得到一个对象。因此,对象就是一组变量和相关方法的集合,其中变量表明对象的状态、属性,方法表明对象所具有的行为。,5.1.1 类定义 对一个用户自定义的类,要为类取一个名字,并指明类中包含哪些变量和方法以及相应的类型、实现等,这称为类的定义。类定义语句的一般形式为:[修饰符]class 类名 [extends 父类名][implements 接口名表] {成员变量声明 // 类体方法成员声明} 其中class、extends和implements都是Java的关键字。修饰符、extends(表示继承)和implements(表示接口)等内容,以后逐渐介绍。类定义中必须要写的内容是类名,应该使用Java语言合法的标识符来对自定义的类命名。,在大括号中定义类体,指明该类中包含的数据成员和成员方法。在Java语言中也允许定义没有任何成员的空类。 【例5.1】定义一个名为Rect表示长方形的类,它仅包含double类型的长length和宽width两个数据成员。class Rect {double length;double width;} 在类的定义中,可加入对数据成员进行操作的方法成员。 【例5.2】定义一个名为Rectangle表示长方形的类,它包含double类型的长length和宽width两个数据成员和设置长方形长宽值的方法setDim()、计算长方形面积的方法area()。,class Rectangle {double length;double width;double area() {return length * width;}void setDim(double w, double l) {width = w;length = l;}} 在一个程序中,有时需要定义多个类。多个类的定义形式有两种:并列和嵌套。 常见的多个类定义形式为并列定义,即一个类接着一个类进行定义,它们之间是并列的关系。,另一种形式为嵌套定义,即在一个类中定义另外的类,它们之间是包含和被包含的关系,可分别称为包含类和内部类(或嵌套类)。采用何种形式定义多个类,由类之间的访问关系确定。 类定义了一个类型(type)。与Java语言提供的几种基本类型一样,类型用来声明、定义该类型的变量。例如,下面的语句:Rect rect1; 声明变量rect1的类型为类Rect。 类型为类的变量与基本类型变量有所不同,类是一种引用(reference)类型。实际上,rect1是一个对类型为类Rect的对象的引用,rect1不是对象本身,可理解为一个指针,上述声明仅生成一个空(null)引用。,5.1.2 类对象 一旦定义了所需的类,就可以创建该类的变量,创建类的变量称为类的实例化,类的变量也称为类对象、类的实例等。 类的对象是在程序运行中创建生成的,其所占的空间在程序运行中动态分配。当一个类的对象完成了它的使命,为节省资源,Java的垃圾收集程序就会自动收回这个对象所占的空间。即类对象有自己的生命周期。 1.创建对象 创建类的对象需用new运算符,一般形式为:对象名 = new 类名(),new运算符用指定的类在内存中分配空间,并将存储空间的引用存入语句中的对象变量。 例如:rect1 = new Rect(); new运算符也可以与类声明一起使用来创建类的对象。 例如:Rect rect1 = new Rect(); 2.引用对象 在创建了类的对象后,就可以对对象的各个成员进行访问,进行各种处理。访问对象成员的一般形式为:对象名.数据成员名对象名.成员方法名() // 方法名带圆括号,运算符“.”在这里称为成员运算符,在对象名和成员名)之间起到连接的作用,指明是哪个对象的哪个成员。 例如:设已经定义了例5.2中的Rectangle类,可以用如下的方法来引用对象的成员:Rectangle r = new Rectangle(); // 定义类的对象r.length,r.width // 引用对象的数据成员r.area() // 引用对象的成员方法 【例5.3】利用例5.1定义的类Rect,计算长和宽分别为20和10的长方形面积。 class RectDemo {public static void main(String args[]) {Rect rect1 = new Rect(); // 为对象rect1分配存储空间double area;
展开阅读全文
  微传网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。