c++面向对象编程的特点

转自:http://www.cnblogs.com/njczy2010/p/5769520.html

First: 抽象

  面向对象方法中的抽象,是指对具体问题(对象)进行概括,抽出一类对象公共性质并加以描述的过程。抽象的过程,也是对问题进行分析和认识的过程。对问题的抽象应该包括两个方面:数据抽象 和 行为抽象(也就是功能抽象 和 代码抽象)。用3个整形数来存储时间,分别表示时、分、秒,这个就是数据抽象。显示时间、设置时间等功能,这就是行为抽象。

Second:封装
  封装就是将抽象得到的数据和行为相结合,形成一个有机整体,也就是将数据与操作数据的函数代码进行有机的整合,形成“类”,其中的数据和函数老师类的成员。这个就不用解释了吧。
 
Third:继承
  例如,一般意义的“人”都有姓名、性别、年龄等;还有吃饭、工作、学习等。但是按照职业划分,人又分为学生、老师、工程师、医生等,每一类人又有各自的特殊属性和行为。例如学生具有专业、年级等特殊属性和升级毕业等特殊行为,这些属性和行为是医生所不具有的。如何把特殊与一般的概念间的关系描述清楚,使得特殊概念之间既能共享一般的属性和行为,又能具有特殊的属性和行为呢?继承就是解决这个问题的。C++语言中提供了类的继承机制,允许程序员在保持原有类的基础上,进行更具体、更详细的说明。

Fourth:多态
  面向对象程序设计中的多态是对人类思维方式的一种直接模拟。比如我们在日常生活中说“打球”,这个“打”,就表示了一个抽象的信息,具有多重含义。我们可以说:打篮球、打排球、打羽毛球,都使用“打”来表示参与某种球类运动,而其中的规则和实际动作却相差甚远。实际上这就是对多种运动行为的抽象。多态性是指一段程序能够处理多种类型对象的能力。在C++中这种多态可以通过强制多态、重载多态、类型参数化多态、包含多态4种形式来实现。包含多态和类型参数化多态属于一般多态性,是真正的多态。C++中采用虚函数实现包含多态。虚函数是多态性的精华。
模板是C++实现参数化多态性的工具,分为函数模板和类模板两种



  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值