2018-11-16关于对象和面向对象

关于对象和面向对象

1,什么是对象

可以把万物想作对象。任何对象都可以有属性和方法。
比如人就是一个对象。人的鼻子眼睛,手臂嘴巴都是属性。
人可以说话,可以工作,可以吃饭,这一些行为就可以叫做方法。

2,什么是面向对象呢?

举个栗子,我们每天使用的手机也是一个对象。
手机有一些硬件可以看做属性。可以打电话,拍照这些功能可以
看做方法(行为or函数)。
然后我们在使用手机这个对象的时候并不需要知道
这个对象是如何工作的。只要会使用它就可以了。我觉得这就是面向对象。

PS:其实我觉得生活中的男人女人找对象和编程里的对象还有点相似呢。找对象不就是要找一个特殊的人吗?这个人要有某种长相或品格(这就是属性)。还要有某些特殊的能力或技能(这就是方法)。嘿嘿。


图文无关

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

封装

封装就是将数据或函数等集合在一个个的单元中(也可以叫做类)。被封装的对象通常被称为抽象数据类型。 尽可能地隐藏内部的细节,只保留一些对外接口使之与外部发生联系。
(每个人都属于“人”这个类。每个单独的人就是“人”这个类的一个对象)。

继承

继承是使用已存在的类作为基础建立新类的技术,新类的定义可以增加新的数据或新的功能,也可以用父类的功能,但只能全部继承,不能选择性继承。继承使我们能够非常方便地复用以前的代码,大大提高开发的效率。
C++可以多重继承,Java只能单独继承(但可以通过接口功能实现多重继承功能)JavaScript通过特殊方式可以实现特殊多重继承(通过控制一个函数的prototype对象)。

多态

所谓多态就是指程序中定义的引用变量所指向的具体类型和方法调用在编程时并不确定,而是在程序运行期间才确定,即一个引用变量倒底会指向哪个类的实例对象,该引用变量发出的方法调用到底是哪个类中实现的方法,必须在由程序运行期间才能决定(比如函数的重载,需要通过不同的参数才能确定到底使用那个函数(方法))。


图文无关
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容