第5章 类和对象.ppt
《第5章 类和对象.ppt》由会员分享,可在线阅读,更多相关《第5章 类和对象.ppt(62页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、课程主讲人:第5章 类和对象2Java程序设计精编教程程序设计精编教程 第第5章章类和对象类和对象3导读导读主要内容主要内容类和对象概述类和对象概述构造方法构造方法类和成员的修饰符类和成员的修饰符this关键字关键字45.1 类和对象概述类和对象概述 l 在面向对象技术中,类(Class)和对象(Object)是最基本、最重要的组成单元。类实际上是对客观世界中某类群体的一些基本特征的抽象。对象表示一个个具体的事物。事物的属性可以用变量描述,行为可以用方法描述。l 类是定义属性和行为的模板,对象是类的实例(instance),对象与类的关系就像变量和数据类型的关系一样。5 5.1.1 类和对象的
2、关系类和对象的关系 类是具备某些共同特征的实体的集合,是对现实生活中某类对象的抽象,既包括数据又包括作用于数据的一组操作。类的数据称为成员变量,反映类的状态和特征;类对数据的操作称为成员方法,反映类的行为和能力。 对象是表示现实世界中某个具体的事物,对象与实体是一一对应的,也就是说万物皆对象,这是一个具体的概念。6成员变量成员方法名字举例说明 5.1.1 类和对象的关系类和对象的关系7计算机世界现实世界 5.1.1 类和对象的关系类和对象的关系8 5.1.2 类的定义类的定义(1)类定义格式-Java中类包括成员变量和成员方法两部分。基本格式 为:类的修饰字class类名(extends父类名
3、称|implements接口名 称变量定义及初始化;声明成员变量方法修饰字返回值的数据类型方法名称(参数1,参数 2.) 程序语句! 定义成员方法return表达式;9说明:(1) class关键字,用于定义类。“class类名”是类的声明部分, 类名必须是合法的Java标识符,通常第一个字母大写,能体现类的功能和作用。(2 )类的修饰字有:public abstract | final 、缺省方式为 friendly。其中,abstract类不能直接产生属于这个类的对象;final类不能被其他任何类所继承;public类不但可以被同一程序包中的其他类使用,别的程序包中的类也可以使用;frie
4、ndly(缺省)类只能被本包中的其他类使用。 5.1.2 类的定义类的定义10(3)Java语言允许对类中定义的各种属性和方法进行访问控制, 即规定不同的保护等级来限制对它们的使用,目的在于实现信息的 封装和隐藏。Java语言为对类中的属性和方法进行有效地访问控制, 将它们分为四个等级:private default、protected public,具体规则 如表5-1。 5.1.2 类的定义类的定义11表5-1 Java类成员的访问控制可否直接访问 控制等级同一个类中同一个包中不同包中 的子类对象任何场合privateYesdefaultYesYesprotectedYesYesYespu
5、blicYesYesYesYes 5.1.2 类的定义类的定义12(4) 每个类都拥有自己的名字空间,即类及其方法和变量可以在 一定的范围内知道彼此的存在,可以使用。(5) 父类继承:extends父类名(见第六章类的继承与多态性)。(6) 接口实现:implements接曰名(见第九章接曰和实现)。(7) 类的目的是抽象出一类实物共有的属性和行为,并用一定的 语法格式来描述所抽象出的属性和行为,即数据以及在数据上所进 行的操作。因此类体的内容由以下两部分构成:变量的声明:存储属性的值(体现对象的属性)。方法的定义:方法可以对类中声明的变量进行操作(体现对 象所具有的行为)。 5.1.2 类的
6、定义类的定义13 5.1.2 类的定义类的定义(2)成员变量 类体屮所声明的变量被称为成员变量。定义格式为:变量修饰字变量数据类型变量名1,变量名2 =变量初值; 例如:定义Dog类14(3)成员方法 方法的定义包括两部分:方法头和方法体。定义格式为: 5.1.2 类的定义类的定义15 例如:定义成员方法bark。public void bark0(System, out. printinC狗在汪汪叫。; 说明:(1) 方法头确定方法的名字、形式参数的名字和类型、返回值的 类型和访问限制;方法体由括号内的声明部分和语句部分组成,描述方法的功能。(2) 类型标识符反映的是方法完成其功能后返回的运
7、算结果的数 据类型,如果方法没有返回值,用void关键字指明。本例中方法 bark()的返回类型为void。 5.1.2 类的定义类的定义16(3) 对于有返回值的方法,方法体中至少含有一条retum语句,其形式为:return (表达式);当调用该方法时,方法的返冋值即此 表达式的值。(4) 方法不能嵌套,即不能在方法中再声明其他方法。(5) 同一个类中的方法可以访问该类的成员变量。(6) 一个类的方法只能访问自己的局部变量。 5.1.2 类的定义类的定义17 例如:定义成员方法bark。public void bark0(System, out. printinC狗在汪汪叫。; 说明:(1
8、) 方法头确定方法的名字、形式参数的名字和类型、返回值的 类型和访问限制;方法体由括号内的声明部分和语句部分组成,描 述方法的功能。(2) 类型标识符反映的是方法完成其功能后返回的运算结果的数 据类型,如果方法没有返回值,用void关键字指明。本例中方法 bark()的返回类型为void。 5.1.2 类的定义类的定义18(3) 对于有返回值的方法,方法体中至少含有一条retum语句,其形式为:return (表达式);当调用该方法时,方法的返冋值即此 表达式的值。(4) 方法不能嵌套,即不能在方法中再声明其他方法。(5) 同一个类中的方法可以访问该类的成员变量。(6) 一个类的方法只能访问自
9、己的局部变量。 5.1.2 类的定义类的定义19 5.1.2 类的定义类的定义-例5.1定义Dog类,并设置其属性和方法。在上面的程序屮,Dog类定义了name、age和color三个属性,分别表示狗的姓名、年龄和毛发颜色,然后定义了一个bark()方法,表明狗有汪汪叫的能力。20(1)对象的创建创建对象的步骤包括:对象的声明;对象的实例化及对象的初始化。基本格式: 5.1.3 对象的创建、使用及清除对象的创建、使用及清除21 说明:(1) 当创建一个类时,只是创建了一种新的数据类型。对象是 类的一个实例。(2) 使用new运算符实例化对象。(3) 实例化对象时,向内存申请存储空间,并同时调用
10、类的构造方法对对象进行初始化(构造方法见第5.2节) 5.1.3 对象的创建、使用及清除对象的创建、使用及清除22 5.1.3 对象的创建、使用及清除对象的创建、使用及清除例5.2定义DogTest类,创建并实例化该类的一个对象该程序是在例5.1的基础上创建并实例化DogTest类的一个对象dog23 5.1.3 对象的创建、使用及清除对象的创建、使用及清除(2)对象的使用在程序中创建对象的目的是使用对象。创建一个对象 就要为对象的各个成员变量分配存储空间,可以通过 引用对象的成员来使用对象。-对象数据成员的引用方式如下:-对象成员方法的引用方式如下:24 5.1.3 对象的创建、使用及清除对
11、象的创建、使用及清除例5.3定义DogTestl类,创建该类对象dog,使用该对象 并输岀相应信息。程序运行结果:dog阿黄的年龄:3,毛发的颜色:黄色狗在汪汪叫25 5.1.3 对象的创建、使用及清除对象的创建、使用及清除(3)对象的清除基本格式为:说明:一个类只有一个finalize方法,没有返冋值。26 5.1.3 对象的创建、使用及清除对象的创建、使用及清除下面对前面介绍的类的定义、对象的定义梳理一下(即例5.3),程序框架如下:5.2构造方法-类中有一种特殊的方法,其方法名与类名相同,称为 构造方法。当使用new运算符实例化一个对象时,系统 为对象创建内存区域并自动调用构造方法初始化
12、成员 变量。-构造方法定义格式如下:说明:(1) 构造方法的名称必须与类名相同;主要用于对象的初始化;(2) 构造方法的声明处不能有任何返回值类型的声明;(3) 不能在构造方法中使用retum语句返回一个值;(4) 构造方法不能直接调用,用new创建对象时自动调用;(5) 一个类中可以定义多个构造方法,但是构造方法的参数表不 能相同,即各构造方法的参数个数不同或参数类型不同;(6) 当一个类没有构造方法的时候,Java自动为该类生成一个默 认的构造方法,默认构造方法没有参数。但是,当一个类定义了构造方法时,默认构造方法将不会被提供。5.2 构造方法5.2构造方法例5.4针对例5.1的Dog类,
13、定义构造方法。DogTest2类中定义了三个成员变量:name、color和age, DogTest2 (String name I, String colorl, int agel)是其构造函数,实现对象的初始化。例5.5定义PersonTest类,使用默认构造方法创建对象,并打印输岀对象的信息。5.2构造方法程序运行结果:null null 0李小红太原市24例5.6定义多个构造方法,根据参数不同,调用相应的 构造方法。程序运行结果:张小白14李小红5.2构造方法分析:对比例5.5和例5.6可知,当程序中没有明确定义构造函数时,系 统会调用默认构造方法对成员变量用默认值进行初始化(字符串型
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第5章 类和对象 对象
限制150内