visualc面向对象编程

visualc面向对象编程

ID:26887934

大小:247.01 KB

页数:22页

时间:2018-11-29

visualc面向对象编程_第1页
visualc面向对象编程_第2页
visualc面向对象编程_第3页
visualc面向对象编程_第4页
visualc面向对象编程_第5页
资源描述:

《visualc面向对象编程》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第十四讲:VisualC++面向对象编程杨章伟e-mail:yang505412@163.com课程内容安排面向对象技术基本概念对象和类对象的属性和方法封装、继承和多态VisualC++面向对象程序设计综合练习思考和习题面向对象技术基本概念传统的软件开发技术(如结构化技术)是采用自顶向下的思想指导程序设计,即将目标划分为若干子目标,子目标再进一步划分下去,直到目标能被程序设计实现为止。面向对象技术根据现实生活中的具体实体,将程序的实现分解为一个一个具体对象的实现,这是更符合人的思维方式的一种方法。比如,在生产一辆汽车的过程中,将组成汽车的各个零件都

2、先生产出来,再拼合成汽车,这就是面向对象技术,如图14-1所示。面向对象程序设计语言最早出现的面向对象程序设计语言是Simula语言。该语言是1967年挪威科学家Ole-JohanDahl和KristenNygaard正式发布的。其引入了所有后来面向对象程序设计语言所遵循的基础概念,例如对象、类、继承等。随后,比较经典的面向对象程序设计语言有SmallTalk、C++及Java等。总体来说,面向对象的程序设计语言有如下的一些特点。访问控制。在C++中,类有私有的(private)、保护的(protected)和公有的(public)3种访问机制。封

3、装:将一组数据和与这组数据有关的操作集合组装在一起,形成一个能动的实体,也就是对象继承性。通过对已有对象进行增加或部分修改的方法建立新的对象。多态性。多态性意味着存在多种形式,能使人们在程序中激活任何属于某一类的成员函数。对象面向对象技术不同于传统的结构化技术,主要体现在其使用对象来进行程序开发。对象(Object),是指包含数据及其操作的实体,也即在传统的数据结构中加入一些过程,使用这些过程来赋予对象对数据的操作功能,这些过程就是后面要提到的成员函数,如图14-2所示。在现实世界中,对象指的就是具体的事物,例如:飞机、汽车、人等。每个对象都含有自

4、己的内部状态和行为,例如人具有名字、身高、体重等内部状态,也具有走路、吃饭等行为。在面向对象的概念中,将对象的内部状态称为属性,将其行为称为方法或事件。对象之间的联系通过消息来传递,消息机制是对象间相互联系和相互作用的方式。说明:在VisualC++中,整个应用程序可以是一个对象,对象也是应用程序的一个部分,例如控件和图表等类类(Class),是指具有相似内部状态和行为的实体的集合。在类的构造过程中,有由特殊到一般的归纳法和由一般到特殊的演绎法两种方法。在归纳的过程中,从一个个具体的事物中把共同的特征抽取出来,形成一个一般的概念,即“归类”。例如:

5、人、狮子、老鹰等,因为其都能动,所以将其归类为动物,如图14-3所示。封装封装是面向对象编程思想中的重要特性之一,其作用在于定义对象和操作,只提供抽象的接口,并隐藏其具体实现。封装的结果是类,也即把有相似属性(成员变量)、操作(成员函数)的事物绑在一起处理(即一个类)。例如,为了方便管理公司职工,可以给职工写一个类,该类的属性可以有年龄、性别、姓名、入职日期等,操作可以有开除、调动等,这就实现了封装,如图14-8所示。例如,将时钟的数据和功能封装起来,构成一个时钟类。按C++的语法,时钟类的声明如下:classClock{public://公共成员

6、,用作外部接口voidSetTime(intNewH,intNewM,intNewS);voidShowTime();private://私有成员,外部无法访问intHour;intMinute;intSecond;}继承继承是面向对象程序设计的又一个重要概念,其可以将现实生活的概念对应到面向对象的程序逻辑中。例如,车是一个类,具有一些公共的性质;而汽车也是一类,但其属于车,所以汽车是继承于车的,而奔驰汽车又继承与汽车,如图14-9所示。一个类(派生类、子类)是从另一个类(基类、父类)派生而来,派生类继承了基类的所有特性。在C++中,一个派生类可以

7、从一个基类派生,也可以从多个基类派生。从一个基类派生的继承称为单继承;从多个基类派生的继承称为多继承。一般来说,继承有3种方式。公有继承:也称为public继承类型。保护继承:也称为protected继承类型。私有继承:也称为private继承类型。继承类型与成员类型的继承关系根据继承的不同类型,基类的成员在派生类中的访问控制受继承类型的限制,具体限制如表14-2所示。存取方式继承类型publicprotectedprivate公有继承publicprotected不可见保护继承protectedprotected不可见私有继承privatepri

8、vate不可见多态多态性也是面向对象程序设计的重要特征之一,多态性是指发出同样的消息被不同类型的对象接收时导致完全不同的行

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。