C++面向对象的三大特性

面向对象:先抽象问题整体,在具体逻辑细节。

面向过程:先具体逻辑细节,再抽象问题整体。

面向对象的三大特性:封装、继承、多态

类的封装  --> 一个类如何描述?
类的继承  --> 多个类型之间存在继承关系,如何继承?
类的多态  --> 类的对象有多种形态?

C++认为万事万物皆为对象,对象上有其属性与行为。
例如: 
人可以作为对象,属性有姓名、年龄、身高、体重...  行为有走、跑、跳、唱歌、跳舞..
车可以作为对象,属性有轮胎,方向盘,车灯...   行为载人、播音乐、放空调...
具有相同性质的对象,我们可以抽象成为类,人属性人类,车属性车类。

  类    ---->   对象
 人类          张三
 车类          雷克萨斯
 学生类        李四

《封装性》:数据和代码捆绑在一起,避免外界干扰和不确定性访问。封装可以使得代码模块化。
优点:
确保用户代码不会无意间破坏封装对象的状态
被封装的类的具体实现细节可以随时改变,而无须调整用户级别的代码

《继承性》:让某种类型对象获得另一个类型对象的属性和方法。继承可以扩展已存在的代码
《多态性》:同一事物表现出不同事物的能力,即向不同对象发送同一消息,不同的对象在接收时会产生不同的行为(重载实现编译时多态,虚函数实现运行时多态)。多态的目的则是为了接口重用

静态多态: 静态多态是在程序《编译阶段》已经确定将要执行的状态。 (函数重载,模板)

动态多态:动态多态是在程序《运行阶段》才能确定将要执行的状态。 (虚函数覆盖)

简单的理解:面向对象就是把所有代码写入到类中

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

物の哀

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值