面向对象的理解

Posted 小新没蜡笔哦

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了面向对象的理解相关的知识,希望对你有一定的参考价值。

面向对象有三大特性,封装、继承和多态。

封装就是将一类事物的属性和行为抽象成一个类,使其属性私有化,行为公开化,提高了数据的隐秘性的同时,使代码模块化。这样做使得代码的复用性更高。

继承则是进一步将一类事物共有的属性和行为抽象成一个父类,而每一个子类是一个特殊的父类--有父类的行为和属性,也有自己特有的行为和属性。这样做扩展了已存在的代码块,进一步提高了代码的复用性。

如果说封装和继承是为了使代码重用,那么多态则是为了实现接口重用。多态的一大作用就是为了解耦--为了解除父子类继承的耦合度。如果说继承中父子类的关系式IS-A的关系,那么接口和实现类之之间的关系式HAS-A。简单来说,多态就是允许父类引用(或接口)指向子类(或实现类)对象。很多的设计模式都是基于面向对象的多态性设计的。

总结一下,如果说封装和继承是面向对象的基础,那么多态则是面向对象最精髓的理论。掌握多态必先了解接口,只有充分理解接口才能更好的应用多态。

自己的理解:

“假设我是女娲,我准备捏一些人,
首先,人应该有哪些基本特征:
1.有四肢 2.有大脑 3.有器官 4.有思想 我们就有了第一个模型,这就是抽象

其次,我和西方上帝是好友,我想我的这个想法能够提供给他用,但是我不想让他知道里面细节是怎么捏出来的,用的什么材料,他也不用考虑那么多,只要告诉我他要捏什么样的人就可以了。这就是封装

然后,我之后创造的人都以刚才的模型做为模板,我创造的人都有我模型的特征 这就是继承

 



以上是关于面向对象的理解的主要内容,如果未能解决你的问题,请参考以下文章

程序员小白如何理解面向对象?

程序员小白如何理解面向对象?

对面向对象c++中多态的理解

JAVA面向对象思想理解分析

java面向对象思想如何理解?

面向对象怎样理解?