C++语言程序设计基础知识.doc

C++语言程序设计基础知识.doc

ID:56098731

大小:76.00 KB

页数:17页

时间:2020-06-19

C++语言程序设计基础知识.doc_第1页
C++语言程序设计基础知识.doc_第2页
C++语言程序设计基础知识.doc_第3页
C++语言程序设计基础知识.doc_第4页
C++语言程序设计基础知识.doc_第5页
资源描述:

《C++语言程序设计基础知识.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第12章面向对象程序设计与C++基础程序设计语言是编写程序的工具,程序设计语言的发展反映了程序设计方法的演变过程。随着计算机技术的日新月异,要求软件具有良好的可重用性和可扩展性,这就导致程序设计方法从结构化程序设计方式转变到面向对象程序设计方式。C语言能够很好地支持结构化程序设计,C++不仅兼容C,同时具有面向对象的特征,因此充分支持面向对象程序设计。12.1面向对象程序设计的基本概念面向对象技术变革了软件设计的传统方法。解决结构化程序设计不足的方法就是限制数据的存取权限,面向对象程序设计把数据和使用此数据的过程封装成一个类(类可看成

2、是一个基本数据类型)。数据的封装和隐藏一方面使得内部数据不被破坏,另一方面程序具有良好的可读性和相对独立性。类的继承机制不仅提高了代码的可重用性,降低了软件开发难度和开发周期,同时程序的修改变得容易,软件结构更加稳定,软件的可维护性大大提高。面向对象软件系统由类的层次结构组成,类的具体实例叫做对象,对象之间通过彼此的联系,共同实现程序的功能。如图12-1所示。数据方法数据方法数据方法数据方法类的层次结构图12-1面向对象软件系统面向对象程序设计方法提出一些全新的概念:对象、类、封装、数据隐藏、继承和多态性等。多态性、数据封装和继承共同

3、构筑了面向对象程序设计的三大机制。属性:颜色、进水量、洗涤指示操作方法:进水排水洗涤甩干图12-2洗衣机类示意图1.类与对象面向对象的方法学认为,客观世界由对象组成,对象有自己独特的特征和行为,两者密不可分。面向对象的软件技术中,类是将不同类型的数据和与这些数据相关的操作封装在一起的集合体。对象可看成类的具体实例。图12-2描述了洗衣机类。【例12-1】在现实世界中,钢笔具有笔帽、笔体、笔尖、颜色、形状等属性特征,钢笔具有的行为是书写、灌钢笔水。钢笔作为一个整体,具有独特的属性和行为,它们将被抽象成一个钢笔类。这种自成一体性称为封装性

4、。而你正在使用的钢笔,可以看成钢笔类中的一个具体实例。我们不必关心钢笔的内部结构及实现细节,仅利用钢笔对外提供的操作,即外部接口,就可以方便地使用钢笔。【例12-2】对于整型类型的数据,可以定义对它的四则运算,这是整型数据具有的行为,四则运算与整型数据封装成一体,命名为“int类”。字符型运算和逻辑运算不可以访问、修改int类中的数据,只有int类中定义的四则运算才能对其进行操作。显然,我们也无需知道四则运算是如何定义的,int类对外界提供的操作接口是“+”、“-”、“*”、“/”,可以直接利用这些接口实现整数的四则运算,这叫做数据的

5、隐藏性。2.数据的封装和隐藏封装强调的是数据和行为的自成一体性,也就是将数据和操作数据的函数代码进行有机的结合,形成“类”。封装具有如下意义:1)面向对象的程序表现出强烈的可读性和独立性。2)程序不依赖数据结构的改变,具有良好的可维护性。当数据结构改变时,只有类中对数据进行操作的函数需要修改,程序的其他部分不受影响。3)对数据起到一定的保护作用。只有类中的函数才可以修改类中的私有数据。隐藏是指类把对数据的操作信息隐藏在内部,只提供对象对外的操作接口,用户只能看见对象封装接口上的信息,这样可以保护内部数据不被破坏,同时使用者使用起来非常

6、方便,并可以容易地将其扩展成新的产品。3.类的继承类的继承是指新的派生类可以继承原有父类的全部数据和操作的机制,并可以在派生类中添加新的数据和操作方法。新的派生类又叫子类,原有父类又叫基类或超类。例如,想生产敞篷汽车不用从草图开始,只需要对原有的产品添加新的敞篷功能,这样就会快速开发出一种新的产品。利用类的继承特性,可以非常方便地产生一系列具有相似特征的对象。再看一个类继承的例子。在小学,我们学过数的四则运算,到中学会进一步学到对数、指数等运算,到大学将学到微积分等内容。我们每一次的进步都将继承已学过的知识,在已有的基础上不断扩充新的

7、知识。4.消息对象之间通过消息相互联系,也是通过消息让某一个对象完成一定的功能。例如,给洗衣机对象发洗涤的操作信号,洗衣机就会执行洗涤的功能。在面向对象的程序设计中,消息名就是在对象中定义的操作(或称方法),给对象发消息,就是让对象执行某一操作,使对象具有行为的能力。如图12-3所示。边长、顶点求周长求面积发消息求面积执行操作求面积在C++中的表示:A·求面积(边长,顶点坐标)图12-3消息机制5.多态性多态性表示同一种东西有多种形态。例如,与对方通信,这个动作将有多种表现形态,如采用写信的方式、打电话、发电报、发电子邮件等。在面向对

8、象的程序设计中,多态性是指同一个(或相似的)操作作用于不同的对象上可以有不同的独特行为,比如add操作,作用在实数对象上,表现为两个实数相加,作用在虚数对象上,表现为两个虚数相加。面向对象的C++语言允许程序员给不同的对

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

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

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