- 1、本文档共21页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Java程序设计 第7章 对象和类 学习目标 理解对象和类以及它们之间的关系 掌握如何定义类并创建类的对象 了解类和对象的UML表示 理解构造函数的作用 理解对象引用,掌握如何向方法传递对象引用 掌握getter、setter方法 掌握this的含义和使用 理解实例变量和方法,静态变量、常量和方法 理解类中变量的作用域 使用对象作为数组元素 面向对象的程序 C语言的面向过程的语言。面向过程的核心: 数据结构 算法 数据加工 Java语言是面向对象的语言。面对对象的核心: 封装 继承 多态 对象协作 类和对象 对象(object)表示现实世界中可以明确识别的实体。例如,学生、圆、按钮等。对象具有状态和行为。 类(class)定义了同一类对象共有的属性和方法。 类是对象的模板、蓝图。对象是类的实例。 状态 (变量) 行为 (方法) 姓名:张三 学号:0001 身高:1.73 学习 工作 娱乐 class Circle { double radius = 1.0; Circle() { radius = 1.0; } Circle(double r) { radius = r; } double findArea() { return radius * radius * 3.14159; }} 示例 下面是一个圆类: 数据字段 方法 构造函数 类和对象的UML表示 类的UML表示 类名 数据字段 方法 对象的UML表示 对象名:类名 数据字段值 构造函数 构造函数 构造函数(constructor)是一段初始化代码,用于创建对象。 语法 constructorDeclaration : modifieropt className (parameterList) { statementsopt } 缺省构造函数 如果类未定义任何类型的构造函数,编译器会自动提供一个不带参数的构造函数。 如果已存在带参数的构造函数,则不会提供不带参数的构造函数。 创建对象 使用new操作符创建对象。 语法: new ClassName(actualParameterListopt); 例如: new Circle(); //调用无参构造函数 new Circle(5); //调用带有一个参数的构造函数 Java虚拟机为新创建的对象分配内存,并返回对象的引用。 实例变量被赋予默认初值 实例变量显式初始化 返回对象引用 引用变量 对象通过引用变量(reference variable)进行访问,引用变量中存储的是对象的引用(reference)。 声明引用变量 ClassName objectRefVar; 例如: Circle myCircle; 引用变量赋值 objectRefVar = new ClassName(); 例如: myCircle = new Circle(); 在一条语句中声明变量和创建对象 合并为一句 ClassName objectReference = new ClassName(); 例如: Circle myCircle new Circle(); = 1.声明一个引用变量,变量类型为Circle,变量名为myCircle 2.创建对象,返回对象的引用 3.将对象的引用赋值给变量myCircle 访问对象的实例变量和实例方法 访问对象的实例变量 objectRefVar.data 例如: myCircle.radius访问对象的radius数据字段 调用对象的实例方法 objectRefVar.method(arguments) 例如: myCircle.findArea()调用对象的findArea方法 基本类型变量和引用类型变量的区别 变量表示存储数据的内存单元。 基本类型变量存储的是基本类型的值。 引用类型变量存储的是对象的引用。当变量未引用任何对象时,它是值为null。 1 基本类型 int i = 1; i null 引用类型 Circle c; c 对象的引用 Circle c = new Circle(); c 类成员访问控制符 类中代码可以访问自身的所有成员。 其它类中的代码访问成员,受访问控制符的限制: private 只能当前类自身可以访问。 package 无访问修饰符的成员,只有相同包中的代码可以访问。 protected 子类、同一包中的类可以访问。 public 所有其它类都可以访问。 访问控制是在类的层次上进行的,而不是在每个对象上。 Getter和Setter方法 通常为私有(private)成员变量提供Getter和Setter方法。 如果成员变量为DateType propertyName
文档评论(0)