- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第六章.Java面向对象程序设计.ppt
5.1 类(class) 从本章开始将介绍面向对象的程序设计方法。面向对象的编程思想是力图使在计算机语言中对事物的描述与现实世界中该事物的本来面目尽可能的一致。所以在面向对象的程序设计中,类(Class)和对象(Object)是面向对象程序设计方法中最核心的概念。 5.1 类(class) 类的概念是为了让程序设计语言能更清楚地描述日常生活中的事物。类是对某一类事物的描述,是抽象的、概念上的定义;而对象则是实际存在的属该类事物的具体的个体,因而也称为实例(Instance)。下面用一个现实生活中的例子来说明类与对象的概念。图5.1所示的是一个“汽车类”与“汽车实例”的例子。 其中,汽车设计图就是“汽车类”,由这个图纸设计出来的若干个汽车就是按照该类生产出的“汽车对象”。 思考:汽车类的组成 因此,我们创建一个汽车类,则可表示为: 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的垃圾收集程序就会自动收回这个对象所占的空间。即
文档评论(0)