C++面向对象程序设计 陈维兴林小茶编著 中国铁道出版社
C++面向对象程序设计 陈维兴 林小茶编著 中国铁道出版社
第1讲面向对象程序设计概述 教学目的与要求 了解面向过程与面向对象程序设计语言的区别。 掌握对象和类的基本概念及面向对象的特征 教学内容提要: 1、什么是面向对象程序设计 2、对象与类; 3、为什么要使用面向对象程序设计; 4、面向对象程序设计语 教学重点:对象与类。 教学难点:面向对象的特征。 教学进度:P1~P16 教学过程:
第1讲 面向对象程序设计概述 •教学目的与要求: 了解面向过程与面向对象程序设计语言的区别。 掌握对象和类的基本概念及面向对象的特征。 •教学内容提要: 1、什么是面向对象程序设计; 2、对象与类; 3、为什么要使用面向对象程序设计; 4、面向对象程序设计语言; •教学重点:对象与类。 •教学难点:面向对象的特征。 •教学进度:P1~P16 •教学过程:
1.1什么是面向对象程序设计 111面向过程的程序设计 面向过程的程序设计思想核心是功能分解 这种程序设计是 1、数据结构与过程分离 2、可重用性差,维护代价高
1.1 什么是面向对象程序设计 1.1.1 面向过程的程序设计 面向过程的程序设计思想核心是功能分解。 这种程序设计是: 1、数据结构与过程分离 2、可重用性差,维护代价高
1.1什么是面向对象程序设计 112面向对象的程序设计 面向对象程序设计是一种新型的程序设计范型这 种范型的主要特征是: 程序=对象+消息 1、数据与定义在它上面的用户需要的操作构成一个 整体—对象。 2、程序中的一切操作都是向对象发送消息来实现的。 3、类由继承关系产生相互联系
1.1 什么是面向对象程序设计 1.1.2 面向对象的程序设计 面向对象程序设计是一种新型的程序设计范型,这 种范型的主要特征是: 程序 = 对象 + 消息 1、数据与定义在它上面的用户需要的操作构成一个 整体——对象。 2、程序中的一切操作都是向对象发送消息来实现的。 3、类由继承关系产生相互联系
12对象与类 121面向对象程序设计的基本概念 1.对象 在现实世界中,任何事物都是对象。现实世 界中的对象可以表示为:属性+行为。 具有以下特性: 每一个对象必须有一个名字以区别于其他对象; 用属性来描述它的某些特征; 有一组操作每个操作决定对象的一种行为; 对象的操作可以分为两类:类是自身所承受的操作 类是施加于其他对象的操作
1.2.1 面向对象程序设计的基本概念 1. 对象 在现实世界中,任何事物都是对象。现实世 界中的对象可以表示为:属性+行为。 具有以下特性: ⚫ 每一个对象必须有一个名字以区别于其他对象; ⚫ 用属性来描述它的某些特征; ⚫ 有一组操作,每个操作决定对象的一种行为; ⚫ 对象的操作可以分为两类:一类是自身所承受的操作, 一类是施加于其他对象的操作。 1.2 对象与类
2.类 在实现世界中,“类”是一组具有相同属性和行为 的对象的抽象。 类和对象之间的关系是抽象和具体的关系。类是多 个对象进行综合抽象的结果,一个对象是类的一个实例 类确定和划分的基本原则:寻求一个大系统中事物 的共性,将具有共性的系统成分确定为一个类 3.消息 在面向对象程序设计中,一个对象向另一个对象发 出的请求被称为“消息” 消息的内容一般应包括:接受者的名字、请求的方法 一个或多个参数
2. 类 在实现世界中, “类”是一组具有相同属性和行为 的对象的抽象。 类和对象之间的关系是抽象和具体的关系。类是多 个对象进行综合抽象的结果,一个对象是类的一个实例。 类确定和划分的基本原则:寻求一个大系统中事物 的共性,将具有共性的系统成分确定为一个类。 3 .消息 在面向对象程序设计中,一个对象向另一个对象发 出的请求被称为“消息” 。 消息的内容一般应包括:接受者的名字、请求的方法、 一个或多个参数
122面向对象程序设计的基本特征 面向对象系统最突出特点是封装和数据隐藏性、继承性、多态性。 在面向对象的程序 设计中,封装是一种数 据隐藏技术,它通过把 在面向对象的程序 多态性是指相同 组数据和与数据有关 的消息为不同的对象 的操作集合放在一起形 设计中,同样有着继承 的机制,通过继承可以 接收到时,可能导致 成对象来实现。对象通 支持重用。通过继承, 不同的动作。它使得 过操作接口与外部发生 属于同一类的不同对 联系,而内部的具体细 程序可以在扩展现有类 象可以按各自的需要 节则被隐藏起来,对外 的基础上声明新类 对同一消息做出适当 是不可见的。 从原有类的基础上派生 出来的,原有类称为基 的响应。 类,又叫父类
1.2.2 面向对象程序设计的基本特征 面向对象系统最突出特点是封装和数据隐藏性、继承性、多态性。 多态性是指相同 的消息为不同的对象 接收到时,可能导致 不同的动作。它使得 属于同一类的不同对 象可以按各自的需要 对同一消息做出适当 的响应。 在面向对象的程序 设计中,封装是一种数 据隐藏技术,它通过把 一组数据和与数据有关 的操作集合放在一起形 成对象来实现。对象通 过操作接口与外部发生 联系,而内部的具体细 节则被隐藏起来,对外 是不可见的。 在面向对象的程序 设计中,同样有着继承 的机制,通过继承可以 支持重用。通过继承, 程序可以在扩展现有类 的基础上声明新类—— 从原有类的基础上派生 出来的,原有类称为基 类,又叫父类
13为什么要使用面向对象程序设计 131传统程序设计方法的局限性 (1)传统程序设计开发软件的生产效率低下 (2)传统程序设计难以应付日益庞大的信息量 和多样的信息类型 3)传统的程序设计难以适应各种新环境
1.3 为什么要使用面向对象程序设计 1.3.1 传统程序设计方法的局限性 (1) 传统程序设计开发软件的生产效率低下 (2) 传统程序设计难以应付日益庞大的信息量 和多样的信息类型 (3) 传统的程序设计难以适应各种新环境
132面向对象程序设计的主要优点 (1)可提高程序的重用性 (2)可控制程序的复杂性 3)可改善程序的可维护性 (4)能够更好地支持大型程序设计 (5)增强了计算机处理信息的范围 (6)能很好地适应新的硬件环境
1.3.2 面向对象程序设计的主要优点 (1) 可提高程序的重用性 (2) 可控制程序的复杂性 (3) 可改善程序的可维护性 (4) 能够更好地支持大型程序设计 (5) 增强了计算机处理信息的范围 (6) 能很好地适应新的硬件环境
14面向对象程序设计的语言 141面向对象程序设计语言的发展概况 面向对象程序设计语言应该具有的特征: 1、它支持对象的概念 要求对象属于类 3、提供继承机制
1.4 面向对象程序设计的语言 1.4.1 面向对象程序设计语言的发展概况 一、面向对象程序设计语言应该具有的特征: 1、它支持对象的概念 2、要求对象属于类 3、提供继承机制