Visual C++程序设计 教学课件 第七章 类与对象.pdf
文本预览下载声明
目录
7.1 面向对象程序设计概念
7.2 类
7.3 对象
7.4 构造函数和析构函数
7.5 内联函数
7.6 静态成员
7.7 对象数组和对象指针
7.8 友元
1 返回本章首页
7.1 面向对象程序设计概念
1. 面向过程的程序设计
面向过程的程序设计方法是一种面向数据/过程的设计方法,
它把数据和过程分离为相互独立的实体,程序员在编程时必须时
刻考虑所要处理的数据的格式。对于不同的数据格式即便要做同
样的处理或对相同的数据格式要做不同的处理都需要编写不同的
程序。因此面向过程的程序的可重用性不好。另一方面,当数据
和过程相互独立时,总存在着用错误的数据调用正确的程序模块
或用正确的数据调用了错误的程序模块的可能。
2 返回本章首页
7.1 面向对象程序设计概念
2. 面向对象的程序设计
面向对象设计方法追求的是现实问题空间与软件系统解空间
的近似和直接模拟。它希望用户用最小的气力,最大限度地利用
软件系统来求解问题。相对于面向过程的程序设计,它是一种基
于结构分析的,以数据为中心的程序设计方法。面向对象的思想
是把世界看成是由具有独立行为能力的各种对象组成,所有对象
都有其自身的特性及相关行为。在面向对象的程序中,活动的基
本单位是对象,对象之间的相互作用通过消息的传递来实现。
面向对象设计方法具有许多良好的特点。
(1)模块性。对象是一个功能和数据独立的单元,互相之间只能通
过对象认可的途径进行通信,相互没有预料不到的影响,也可以
较为自由地为各个不同的软件系统所用。
3 返回本章首页
7.1 面向对象程序设计概念
2. 面向对象的程序设计
(2 )封装功能。为信息稳蔽提供具体的实现手段。用户不必清楚对
象的内部细节,只要了解其功能描述就可以使用。
(3 )代码共享。继承性提供了一种代码共享的手段,可以避免重复
的代码设计,使得面向对象的方法确实有效。
(4 )灵活性。对象的功能执行是在消息传递时确定的,支持对象的
主体特征,使得对象可以根据自身的特点进行功能实现,提高了
程序设计的灵活性。
(5 )易维护性。对象实现了抽象和封装,使其中可能出现的错误限
制在自身,不会向外传播,易于差错和修改;
(6 )增量型设计。通过继承机制不断扩充功能,而不影响原有软件
的运行。
4 返回本章首页
7.1 面向对象程序设计概念
3. 面向过程的程序设计与面向对象的程序设
计比较
(1)面向过程的程序设计强调了功能抽象和模块性,它将解决问题
的过程看作是一个处理过程,而面向对象的程序设计则综合了功
能抽象和数据抽象,它将解诀问题看作是一个分类演绎过程。
(2 )模块与对象。面向对象的程序设计中的模块是对功能的抽象,
每个模块都是一个处理单位,它有输入和输出,而面向对象的程
序设计中的对象是包括数据和操作且整体是对数据和功能的抽象
和统一。可以这么说对象包含了模块概念。
5 返回本章首页
7.1 面向对象程序设计概念
3. 面向过程的程序设计与面向对象的程序设
计比较
(3 )过程调用与消息传递。在面向过程的程序设计中,过程为一独
立实体,显式地为它的使用者所见。而在面向对象的程序设计中,
方法是隶属于对象的,它不是独立存在的实体,而是对象的功能
体现。消息传递机制很自然地与分布式并行程序、多机系统和网
络通信模型取得了一致。
(4 )过程
显示全部