21从面向过程的程序设计到面向对象的程序设计 (5)消息( Message):在面向对象的程序设计中,由 于对象描述了客观实体,它们之间的联系通过对象间 的联系来反映。当一个对象需要另外一个对象提供服 务时,它向对方发出一个服务请求,而收到请求的对 象会响应这个请求并完成指定的服务。这种向对象发 出的服务请求就称为消息。 (6)多态性( Polymorphism):多态性是面向对象的另 重要特征。在通过继承而派生出的一系列类中,可 能存在一些名称相同,但实现过程和功能不同的方法 Method 所谓多态性是指当程序中的其他部分发出同样的消息 时,按照接收消息对象的不同能够自动执行类中相应 的方法。其好处是,用户不必知道某个对象所属的类 就可以执行多态行为,从而为程序设计带来更大方便 U回
返回 6 (5)消息(Message):在面向对象的程序设计中,由 于对象描述了客观实体,它们之间的联系通过对象间 的联系来反映。当一个对象需要另外一个对象提供服 务时,它向对方发出一个服务请求,而收到请求的对 象会响应这个请求并完成指定的服务。这种向对象发 出的服务请求就称为消息。 (6)多态性(Polymorphism):多态性是面向对象的另 一重要特征。在通过继承而派生出的一系列类中,可 能存在一些名称相同,但实现过程和功能不同的方法 (Method)。 所谓多态性是指当程序中的其他部分发出同样的消息 时,按照接收消息对象的不同能够自动执行类中相应 的方法。其好处是,用户不必知道某个对象所属的类 就可以执行多态行为,从而为程序设计带来更大方便。 2.1 从面向过程的程序设计到面向对象的程序设计
21从面向过程的程序设计到面向对象的程序设计 2.面向对象的程序设计方法(00方法) 这种方法将设计目标从模拟现实世界的行为转向了模 拟现实世界中存在的对象及其各自的行为 在0OP中,将“对象”作为系统中最基本的运行实体, 整个程序即由各种不同类型的对象组成,各对象既是 个独立的实体,又可通过消息相互作用,对象中的 方法决定要向哪个对象发消息、发什么消息以及收到 消息时如何进行处理等。 数据 消息 方法 消息 U回
返回 7 2. 面向对象的程序设计方法(OOP方法) 这种方法将设计目标从模拟现实世界的行为转向了模 拟现实世界中存在的对象及其各自的行为。 在OOP中,将“对象”作为系统中最基本的运行实体, 整个程序即由各种不同类型的对象组成,各对象既是 一个独立的实体,又可通过消息相互作用,对象中的 方法决定要向哪个对象发消息、发什么消息以及收到 消息时如何进行处理等。 2.1 从面向过程的程序设计到面向对象的程序设计 方法 数据 消息 消息
21从面向过程的程序设计到面向对象的程序设计 3.00P方法的特点 (1)0OP以“对象”或“数据”为中心。由于对象自然地反映了应 用领域的模块性,因此具有相对稳定性,可以被用作一个组件去 构成更复杂的应用,又由于对象一般封装的是某一实际需求的各 种成分,因此,某一对象的改变对整个系统几乎没有影响 (2)引入了“类”( class)的概念。类与类以层次结构组织,属 于某个类的对象除具有该类所描述的特性外,还具有层次结构中 该类上层所有类描述的全部性质,OOP中称这种机制为继承。 (3)0OP方法的模块性与继承性,保证了新的应用程序设计可在原 有对象的数据类型和功能的基础上通过重用、扩展和细化来进行 而不必从头做起或复制原有代码,这样,大大减少了重新编写新 代码的工作量,同时降低了程序设计过程中出错的可能性,达到 了事半功倍的效果。 U回
返回 8 3.OOP方法的特点 (1)OOP以“对象”或“数据”为中心。由于对象自然地反映了应 用领域的模块性,因此具有相对稳定性,可以被用作一个组件去 构成更复杂的应用,又由于对象一般封装的是某一实际需求的各 种成分,因此,某一对象的改变对整个系统几乎没有影响。 (2)引入了“类”(class)的概念。类与类以层次结构组织,属 于某个类的对象除具有该类所描述的特性外,还具有层次结构中 该类上层所有类描述的全部性质,OOP中称这种机制为继承。 (3)OOP方法的模块性与继承性,保证了新的应用程序设计可在原 有对象的数据类型和功能的基础上通过重用、扩展和细化来进行, 而不必从头做起或复制原有代码,这样,大大减少了重新编写新 代码的工作量,同时降低了程序设计过程中出错的可能性,达到 了事半功倍的效果。 2.1 从面向过程的程序设计到面向对象的程序设计
21从面向过程的程序设计到面向对象的程序设计 2.1.3面向对象的程序设计方法与结构化程序设计方法 的比较 (1)传统的结构化程序设计方法以过程为中心构造应用 程序,数据和处理数据的过程代码是分离的、相互独 立的实体,设计出的程序可重用代码少,且当代码量 增加时维护数据和代码的一致性困难 (2)面向对象程序设计方法中,对象所具有的封装性和 继承性使得代码重用成为可能,并大大减少了程序出 错的可能性。 (3)面向对象方法吸收了结构化程序设计方法的优点, 同时引入了新概念、新机制并建立了比传统方法更高 层次的抽象 U回
返回 9 2.1.3 面向对象的程序设计方法与结构化程序设计方法 的比较 (1)传统的结构化程序设计方法以过程为中心构造应用 程序,数据和处理数据的过程代码是分离的、相互独 立的实体,设计出的程序可重用代码少,且当代码量 增加时维护数据和代码的一致性困难。 (2)面向对象程序设计方法中,对象所具有的封装性和 继承性使得代码重用成为可能,并大大减少了程序出 错的可能性。 (3)面向对象方法吸收了结构化程序设计方法的优点, 同时引入了新概念、新机制并建立了比传统方法更高 层次的抽象。 2.1 从面向过程的程序设计到面向对象的程序设计
2.2C++程序的基本组成 221从c语言到C++语言 C语言以其如下独有的特点风靡了全世界 (1)语言简洁、紧凑,使用方便、灵活。C语言只有32 个关键字,程序书写形式自由 (2)丰富的运算符和数据类型。 3)可以直接访问内存地址,能进行位操作,使其能够 胜任开发操作系统的工作。 (4)生成的目标代码质量高,程序运行效率高。 5)可移植性好。 U回
返回 10 2.2.1 从C语言到C++语言 C语言以其如下独有的特点风靡了全世界: (1)语言简洁、紧凑,使用方便、灵活。C语言只有32 个关键字,程序书写形式自由。 (2)丰富的运算符和数据类型。 (3)可以直接访问内存地址,能进行位操作,使其能够 胜任开发操作系统的工作。 (4)生成的目标代码质量高,程序运行效率高。 (5)可移植性好。 2.2 C++程序的基本组成