2.1面向对象程序设计方法概述 4.继承与重用 生产汽车,一般不会从头开始设计,而是选择已有 的某一型号汽车为蓝本,增加、修改一些功能就行了。 软件开发也是这样,若已经有了一个名为“A的类 还想建立一个名为“B的类,而后者内容只是在前者的基 础上增加了少量内容。显然不必重新设计一个新类B,只 需要把A类拿过来,在此基础上添加新内容就可以了。这 就是面向对象程序设计的继承机制。 C++提供继承机制,大大节省了编程工作量,这就是 所谓"软件重用(software reusability)的思想。 16
4. 继承与重用 生产汽车,一般不会从头开始设计,而是选择已有 的某一型号汽车为蓝本,增加、修改一些功能就行了。 软件开发也是这样,若已经有了一个名为“A”的类, 还想建立一个名为“B”的类,而后者内容只是在前者的基 础上增加了少量内容。显然不必重新设计一个新类B,只 需要把A类拿过来,在此基础上添加新内容就可以了。这 就是面向对象程序设计的继承机制。 C++提供继承机制,大大节省了编程工作量,这就是 所谓“软件重用( software reusability )”的思想。 2.1 面向对象程序设计方法概述 16
2.1面向对象程序设计方法概述 5.多态性 如果有几个相似而不同的对象,要求在向它们发出同 一个消息时,各自作出不同的操作,这种情况就是“多态 现象”。 如:上课。 C++中,所谓多态性是指由继承而产生的不同的类,其 对象对同一消息会作出不同的响应。 小结:多态性能增加程序的灵活性,它是面向对象程序 设计的重要特征
5. 多态性 如果有几个相似而不同的对象,要求在向它们发出同 一个消息时,各自作出不同的操作,这种情况就是“多态 现象” 。 如:上课。 C++中,所谓多态性是指由继承而产生的不同的类,其 对象对同一消息会作出不同的响应。 小结:多态性能增加程序的灵活性,它是面向对象程序 设计的重要特征。 2.1 面向对象程序设计方法概述 17
2.1面向对象程序设计方法溉述 四、 OOP的特点 ●类具有对数据的抽象性、封装性、继承性、多态性。 ·程序设计者(定义类和使用类)的任务有两个: > 设计所需要的类和对象,即确定哪些数据和操作要封装在 一起;(设计和定义类) >考虑怎样向有关对象发送消息,以完成所需的任务。(编 写程序使用类) 类的使用者如同一个总调度,不断地向各个对象发出 命令,让这些对象活动起来,完成指定的工作。这就是面 向对象的程序设计的基本思路。 18
四、 OOP的特点 ⚫类具有对数据的抽象性、封装性、继承性、多态性。 ⚫程序设计者(定义类和使用类)的任务有两个: ➢ 设计所需要的类和对象,即确定哪些数据和操作要封装在 一起;(设计和定义类) ➢ 考虑怎样向有关对象发送消息,以完成所需的任务。(编 写程序使用类) 类的使用者如同一个总调度,不断地向各个对象发出 命令,让这些对象活动起来,完成指定的工作。这就是面 向对象的程序设计的基本思路。 2.1 面向对象程序设计方法概述 18
2.1面向对象程序设计方法概述 五、 OOP—类和对象的作用 C+全面支持传统的面向过程的程序设计(即结构化 编程),也支持基于对象和面向对象的程序设计。 所谓基于对象,是指程序是以类和对象为基础,程 序的设计是围绕对象进行的。(oo的基础功能) 所谓面向对象,是指在基于对象的基础上,利用了 继承机制和多态性。(OOP的高级功能) 对象=算法+数据结构 程序=对象$+消息 19
五、 OOP——类和对象的作用 C++全面支持传统的面向过程的程序设计(即结构化 编程),也支持基于对象和面向对象的程序设计。 所谓基于对象,是指程序是以类和对象为基础,程 序的设计是围绕对象进行的。(oop的基础功能) 所谓面向对象,是指在基于对象的基础上,利用了 继承机制和多态性。(OOP的高级功能) ✓ 对象=算法+数据结构 ✓ 程序=对象S+消息 2.1 面向对象程序设计方法概述 19
2.1面向对象程序设计方法概述 六、OOP的软件开发 ·1.面向对象分析(object oriented analysis,OOA) ·2.面向对象设计(object oriented design,OOD) ·3.面向对象编程(object oriented programming,OOP) ·4.面向对象测试(object oriented test,OOT) ·5.面向对象维护(object oriented soft maintenance,OOSM) 20
六、 OOP的软件开发 • 1. 面向对象分析(object oriented analysis,OOA) • 2. 面向对象设计(object oriented design,OOD) • 3. 面向对象编程(object oriented programming,OOP) • 4. 面向对象测试(object oriented test,OOT) • 5. 面向对象维护(object oriented soft maintenance,OOSM) 2.1 面向对象程序设计方法概述 20