第07章对象和类.ppt

第7章 对象和类 7.1 引言(自学) 7.2 定义对象的类(讲解) 7.3 构造方法(讲解) 7.4 构造引用变量来访问对象(讲解) 7.5 使用java类库中的类(自学) 7.6 静态变量、常量和静态方法(讲解) 7.7 可见性修饰符(讲解) 7.8 数据域封装(讲解) 7.9 不可变对象和类(自学) 7.10 给方法传递对象参数(讲解) 7.11 变量的作用域 (讲解) 7.12 关键字this (讲解) 7.13对象数组(讲解) 7.14 类的抽象和封装 7.15~7.17 实例学习:贷款类Loan、Course、StackOfIntegers 7.18 创建窗口(讲解) 7.2 定义对象的类(自学) 类:是一个数据结构,其中包括一组数据和操作这组 数据的方法。是创建对象的蓝本或模板。 对象:是类的一个具体的实例。创建类的对象叫类的实例化。(见P169图7-1) 对象的要素: 状态(数据成员):具有当前值的数据域的集合构成 行为(函数成员):方法的集合定义 7.3 构造方法 功能:调用可以创建新对象,一种特殊方法 定义构造方法特征: 构造方法与类名完全相同 无返回值类型 可以重载 调用构造方法:new 类名(参数) 构造方法与一般方法的区别:见书P170 7.4 构造引用变量来访问对象 7.4.1 引用变量和引用类型 核心:java中是通过对象引用(Reference variable)来访问 eg: Circle mycircle = new Circle(); 类所定义的类型称为引用类型,上例中mycircle是引用类型 对象通过对象引用变量来访问,上例中一个Circle对象通过mycircle来访问 7.4 构造引用变量来访问对象 7.4.2 访问对象数据和方法: 采用对象成员引用运算符(.) objectRefVar.data objectRefVar.methodName(arguments) eg: Circle mycircle = new Circle(); mycircle.raidus ,实例方法 mycircle.getArea(),实例对象 7.4 构造引用变量来访问对象(实例7-1) 实例 7-1 小结 对于一个文件中还有多个类的情况下,称含有main函数的类为主类。主类与文件名同名,只能是主类为公有类型 定义在一个文件中的不同类,最后生成各自独立的class文件 7.4 构造引用变量来访问对象(实例7-2) 7.4 构造引用变量来访问对象 7.4.5 基本数据类型变量和引用类型变量的区别 引用类型变量:值是对象的存储地址 基本数据类型变量:对应内存存储的值是基本数据类型 7.5 使用java类库中的类(自学) Date类:提供了与系统无关的日期和时间封装包 Random类:生成[0.0..1.0)之间的随机双精度浮点数 7.6 静态变量、常量和静态方法 静态变量:需要让一个类中的所有实例共享数据 静态方法:无需创建类的实例就可以调用 静态常量:类中的常量被所有对象所共享,声明为final static 7.6 静态变量、常量和静态方法 (实例)7-3,7-4 7.7 可见性修饰符(重要) public:类、方法和数据域在任何类中可访问 protected : 保护的成员变量, 只能被它所在类及其子类和相同包中的其它类访问。 默认: 如果上述三个修饰字都没有,默认情况下,类、方法和数据可以从同一个包中的任何类访问,称为包私有(package-private)。 private:使得方法和数据域只能从自身所在的类中访问 详细见P180 、P255 作用域符号对于成员的影响 作用域符号对于类的访问控制影响 7.8 数据域封装(getter setter) 访问器(读取器):读取对象中私有的和受保护的数据成员。 get签名: public 返回值类型 get属性名() 修改器(设置器):修改对象中私有的和受保护的数据成员。 set签名: public void set属性名(数据类型 属性值) 。 7.8 数据域封装(getter setter) 实例7-5 7.10 给方法传递对象参数(实例7-6) Java的唯一参数传递方式:值传递 本质:传递对象就是传递对象的引用,即把实参的引用(地址)传递给型参; 结果:如果在方法中修改形参对象的值,方法外的实参对象也会被修改 7.10 给方法传递对象参数 实例7-6 7.11 变量的作用域(在

文档评论(0)

1亿VIP精品文档

相关文档