以逻辑的视角看面向对象的三大特性

81 阅读1分钟

面向对象三大特性

封装 继承 多态

逻辑顺序

从逻辑的顺序来看,首先是封装,其次是继承,最后是多态。

论证

多态表现为子类重写父类的方法,该方法在子类中有不同的实现细节,因此多态的基础为继承

继承表现为子类拥有父类的属性和方法,而属性和方法则是封装所做的抽象的结果

封装

封装则是对具体事物的抽象,将事物抽象成属性和行为。

程序员功力的一个方面体现为封装的成熟度,换而言之,就是抽象的程度的深浅。对事物的理解越是深刻,则抽象的程度越是精深,封装的越是成熟。

毕加索的《斗牛》可以清晰的体现抽象的程度变化

8279-kkciesr5709714.png

这里使用演绎推理中的的三段论来表达:

斗牛都是公牛

公牛都有角

斗牛都有角

则抽象出斗牛的属性,以此类推,可以抽象出公牛的属性。


斗牛 {
    头
    角
    躯干
    四条腿
    尾巴
}