第4章类和对象 H 很明显,实现多态性的好处在于,为这类对象提供服 务时,不必区分具体是哪种对象,只需发送相同的消息目 可,而由各个对象去以适合自身的方式进行不同的响应。 举一个简单的例子。编制绘图程序时,不同的图形其 绘制的方式是不同的。我们可以声明一个基类“几何图 形”,该类中定义一个“绘图”行为,并定义该类的派生 类“直线”、“椭圆”、“多边形”等,这些类都继承了 基类中的“绘图”行为。在基类的“绘图”行为中,由于 图形类型尚未确定,所以并不明确定义如何绘制一个图形 的方法,而是在各派生类中,根据具体需要对“绘图”重 新定义。这样,当对不同对象发出同一“绘图”命令时, 各对象调用自己的“绘图”程序实现,绘制出不同的图
第4章 类和对象 很明显,实现多态性的好处在于,为这类对象提供服 务时,不必区分具体是哪种对象,只需发送相同的消息即 可,而由各个对象去以适合自身的方式进行不同的响应。 举一个简单的例子。编制绘图程序时,不同的图形其 绘制的方式是不同的。我们可以声明一个基类“几何图 形” ,该类中定义一个“绘图”行为,并定义该类的派生 类“直线” 、 “椭圆” 、 “多边形”等,这些类都继承了 基类中的“绘图”行为。在基类的“绘图”行为中,由于 图形类型尚未确定,所以并不明确定义如何绘制一个图形 的方法,而是在各派生类中,根据具体需要对“绘图”重 新定义。这样,当对不同对象发出同一“绘图”命令时, 各对象调用自己的“绘图”程序实现,绘制出不同的图形
第4章类和对象 H 43面向对象的方法 前面我们已经给出了面向对象程序设计的基本思 想及其特性,本节将对面向对象的方法做一个更深入 的探讨。 要了解面向对象的概念,首先要知道什么是对象 对象在现实世界中是一个实体或者一种事物的概念。 现实世界中的任何一个系统都是由若干具体的对象构 成。作为系统的一个组成部分,对象为其所在的系统 提供一定的功能,担当一定的角色。所以,对象可以 看作是一种具有自身属性和功能的构件
第4章 类和对象 4.3 面向对象的方法 前面我们已经给出了面向对象程序设计的基本思 想及其特性,本节将对面向对象的方法做一个更深入 的探讨。 要了解面向对象的概念,首先要知道什么是对象。 对象在现实世界中是一个实体或者一种事物的概念。 现实世界中的任何一个系统都是由若干具体的对象构 成。作为系统的一个组成部分,对象为其所在的系统 提供一定的功能,担当一定的角色。所以,对象可以 看作是一种具有自身属性和功能的构件
第4章类和对象 H 我们在使用一个对象时,并不关心其内部结构及 实现方法,仅仅关心它的功能和它在系统中的使用方 法,也就是该对象提供给用户的接口。举个例子,对 电视机这个对象来说,我们并不关心电视机的内部结 构或其实现原理是怎样的,只关心如何通过按钮来使 用它。这些按钮就是电视机提供给用户的接口。至于 电视机内部结构原理,对用户来说是隐藏的。分析 个系统,也就是分析系统由哪些对象构成,以及这些 对象间的相互关系
第4章 类和对象 我们在使用一个对象时,并不关心其内部结构及 实现方法,仅仅关心它的功能和它在系统中的使用方 法,也就是该对象提供给用户的接口。举个例子,对 电视机这个对象来说,我们并不关心电视机的内部结 构或其实现原理是怎样的,只关心如何通过按钮来使 用它。这些按钮就是电视机提供给用户的接口。至于 电视机内部结构原理,对用户来说是隐藏的。分析一 个系统,也就是分析系统由哪些对象构成,以及这些 对象间的相互关系
第4章类和对象 H 我们知道,软件开发的目的是为了进行数据处理 因此,在程序中包含有数据和与之相关的代的。 数据和对它进行操作的代码是密切相关、不可分离的, 没有数据的代码和没有代码的数据同样是没有意义的。 在面向对象方法中,我们采用与现实世界相一致 的方式,将对象定义为一组数据及其相关代码的结合 体,其中数据描述了对象的属性,对数据进行处理的 操作则描述了对象的功能,而软件系统由多个这样的 对象构成。对象将其属性和操作的一部分对外界开放, 作为它的对外接口,而将大部分的实现细节隐藏,这 就是对象的封装性。外界只能使用上述定义的接口与 对象交互
第4章 类和对象 我们知道,软件开发的目的是为了进行数据处理, 因此,在程序中包含有数据和与之相关的代码。这些 数据和对它进行操作的代码是密切相关、不可分离的, 没有数据的代码和没有代码的数据同样是没有意义的。 在面向对象方法中,我们采用与现实世界相一致 的方式,将对象定义为一组数据及其相关代码的结合 体,其中数据描述了对象的属性,对数据进行处理的 操作则描述了对象的功能,而软件系统由多个这样的 对象构成。对象将其属性和操作的一部分对外界开放, 作为它的对外接口,而将大部分的实现细节隐藏,这 就是对象的封装性。外界只能使用上述定义的接口与 对象交互
第4章类和对象 H 面向对象的方法中进一步引入了类的概念。所谓 类,就是同样类型对象的抽象描述。对象是类的实例。 类是面向对象方法的核心。对相关的类进行分析,抽 取这些类的共同特性,形成基类的概念。通过继承, 派生类可以包含基类的所有属性和操作,还可以增加 属于自己的一些特性。通过继承,可以将原来一个个 孤立的类联系起来,形成清晰的层次结构关系,称为 类簇
第4章 类和对象 面向对象的方法中进一步引入了类的概念。所谓 类,就是同样类型对象的抽象描述。对象是类的实例。 类是面向对象方法的核心。对相关的类进行分析,抽 取这些类的共同特性,形成基类的概念。通过继承, 派生类可以包含基类的所有属性和操作,还可以增加 属于自己的一些特性。通过继承,可以将原来一个个 孤立的类联系起来,形成清晰的层次结构关系,称为 类簇