码迷,mamicode.com
首页 > 其他好文 > 详细

对面向对象简单的认识

时间:2021-06-07 21:15:00      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:访问修饰符   访问   不同的   属性   父类   重载   解决问题   扩展性   一件事   

谈到面向对象,不得不提到面向过程,为便于理解,我把它们对比者来看。它们分别是从两个不同的角度解决问题。

关注点不同

面向过程注重解决问题的每个步骤,第一步做什么,第二步做什么...最后做什么;

而面向对象更关注有哪些参与者(对象),各个参与者各自需要做什么(行为)。

举个例子

同样做一件事,比如用洗碗机洗碗。

面向过程的思维会把整个任务拆分成一系列具体的步骤(函数),比如:
1、打开洗碗机;
2、放入脏碗;
3、启动洗碗机。

面向对象的思维会分析出具体的对象,人、碗、洗碗机。人要做的就是打开洗碗机并把碗放入其中并启动洗碗机;洗碗机负责洗就完了。

面向对象三大特性

封装
内部细节对外隐藏,对外提供公有访问接口,外部调用无需修改或关心内部的具体实现。

继承
子类继承了父类就默认有用父类的属性或方法(受访问修饰符限制),子类可以对继承的属性或方法进行改变或扩展(覆盖或重载)。

多态
基于对象所属类的不同(继承或实现接口),当调用对象的某个方法,实际执行的逻辑不同。
如:父类引用指向子类对象,运行时实际执行的是子类的方法。重写、重载等都可看作是多态的特性。

总结
可以看出它们有各自的特点面向过程简单直接更高效,面向对象有更高复用性、扩展性和可维护性。

对面向对象简单的认识

标签:访问修饰符   访问   不同的   属性   父类   重载   解决问题   扩展性   一件事   

原文地址:https://www.cnblogs.com/heyuhao/p/14860028.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!