1、第9章面向对象设计类和对象o 面向对象程序设计的基本概念o 类o 对象o 类的属性o 类的方法9.1 面向对象程序设计的基本概念9.1.1 对象9.1.2 类9.1.3 封装性9.1.4 继承性9.1.5 多态性9.1.1 对象 对象的特征分为静态特征和动态特征两种 静态的特征指对象的外观、性质、属性等 动态的特征指对象具有的功能、行为等 人们将对象的静态特征抽象为属性,用数据来描述,在Java语言中称之为变量;人们将对象的动态特征抽象为行为,用一组代码来表示,完成对数据的操作,在Java语言中称之为方法9.1.2 类 将具有相同属性及相同行为的一组对象称为类 面向对象的程序设计有三个主要特征
2、如下 封装性 继承性 多态性9.1.3 封装性 封装性将尽可能对外界公布一个有限的界面,而将其细节隐藏起来 有了封装性,软件设计人员可以集中精力考虑开发系统各模块之间的关系等重大问题,而模块内部的实现可得到程序设计人员的研究与完善,可以充分保证模块质量和可靠性,也支持软件工程化思想9.1.4 继承性 继承所表达的就是一种对象之间的相交关系,它使得某类对象可以继承另外一类对象的数据成员和成员方法 继承具有以下特征 继承关系是传递的。继承是在一些比较一般的类的基础上构造、建立和扩充新类的最有效的手段 继承简化了人们对事物的认识和描述,能清晰体现相关类间的层次结构关系9.1.4 继承性 提供软件复用
3、功能。通过增强一致性来减少模块间的接口和界面,大大增加程序的易维护性。提供多重继承机制。从理论上说,一个类可以是多个一般类的特殊类,它可以从多个一般类中继承属性和方法,这便是多重继承。而 Java 出于安全性和可靠性的考虑,仅支持单重继承,而通过使用接口机制来实现多重继承。9.1.5 多态性 多态是面向对象程序设计的又一个重要特征。多态是允许程序中出现重名现象。Java语言中含有方法重载与成员覆写两种形式的多态 多态的特性使程序的抽象程度和简捷程度更高9.2 类9.2.1 类的声明9.2.2 类的定义9.2.1 类的声明 类声明的语法如下 class 类名称 /类的成员变量 /类的方法 9.2
4、.1 类的声明 【范例9-1】类的组成使用范例9.2.2 类的定义 定义类的语法如下 class 类名称 数据类型 属性;返回值的数据类型 方法名称(参数1,参数2)程序语句;return 表达式;9.2.2 类的定义 【范例9-2】类的定义使用范例9.3 对象9.3.1 对象的声明9.3.2 对象的使用9.3.3 对象的比较9.3.4 对象数组的使用9.3.1 对象的声明 下面定义了由类产生对象的基本形式 类名 对象名=new 类名();创建属于某类的对象,需要通过下面两个步骤来实现 声明指向由类所创建的对象的变量 利用new创建新的对象,并指派给先前所创建的变量9.3.2 对象的使用 要访
5、问对象里的某个成员变量或方法时,可以通过下面语法来实现 访问属性:对象名称.属性名 访问方法:对象名称.方法名()【范例9-3】使用Person类的对象调用类中的属性与方法的过程9.3.3 对象的比较 【范例9-4】“”运算符用于比较使用范例 【范例9-5】equals方法用于对象比较使用范例9.3.4 对象数组的使用 对象也可以用数组来存放,通过下面两个步骤来实现 声明类类型的数组变量,并用new分配内存空间给数组 用new产生新的对象,并分配内存空间给它 【范例9-6】静态方式初始化对象数组使用范例9.4 类的属性9.4.1 属性的定义9.4.2 属性的使用9.4.1 属性的定义 publ
6、ic|protected|private|default(static final)|(final static)className prorotypeName 类的属性定义规则如下 类的属性是变量 类的属性的类型可以是基本类型也可以是引用类型 类的属性的命名规则,首单词的首字母小写,其余单词的首字母大写9.4.2 属性的使用 【范例9-7】类的属性组使用范例9.5 类的方法9.5.1 方法的定义9.5.2 方法的使用9.5.3 构造方法9.5.4 构造方法的重载9.5.5 构造方法的私有9.5.6 在类内部调用方法9.5.1 方法的定义 定义方法的一般形式如下 type name(参数列表)
7、/方法主体 9.5.2 方法的使用 【范例9-8】静态方式初始化对象数组使用范例9.5.3 构造方法 【范例9-9】Java中构造方法的使用范例9.5.4 构造方法的重载 【范例9-10】构造方法的重载范例 【范例9-11】构造方法的使用范例1 【范例9-12】构造方法的使用范例29.5.5 构造方法的私有 【范例9-13】构造方法的私有使用范例 【范例9-14】构造方法的私有使用范例29.5.6 在类内部定义方法 【范例9-15】在类的内部调用方法使用范例人有了知识,就会具备各种分析能力,明辨是非的能力。所以我们要勤恳读书,广泛阅读,古人说“书中自有黄金屋。”通过阅读科技书籍,我们能丰富知识,培养逻辑思维能力;通过阅读文学作品,我们能提高文学鉴赏水平,培养文学情趣;通过阅读报刊,我们能增长见识,扩大自己的知识面。有许多书籍还能培养我们的道德情操,给我们巨大的精神力量,鼓舞我们前进。