大话设计模式之-继承
2018-09-28 本文已影响4人
Chris_C
对象的继承代表了一种‘is-a’的关系,可以描述为B是A,则表明B可以继承A。
继承者可以理解为是对被继承者的特殊化,它除了具备继承者的特性外,还有自己独有的个性。
继承定义了类如何相互关联,共享特性。继承的工作方式是,定义了父类和子类,或者叫做基类和派生类,其中子类继承父类的所有特性。子类不但继承了父类的所有特性,还可以定义新的特性。
继承的规则:
1、子类拥有父类非private的属性和功能
2、子类拥有自己的属性和功能,即子类可以扩展父类没有的属性和功能
3、子类可以以自己的方式实现父类的功能(方法重写)
继承的优点:
继承使得所有子类公共的部分都放在了父类,使得代码得到共享,避免重复,继承使得修改或扩展继承而来的实现都比较容易
继承的缺点:
1、父类变,子类不得不变
2、继承破坏封装,父类实现细节暴露给子类
3、继承导致类之间强耦合
是否使用继承的判断条件:
当两个类之间具备‘is-a’的关系时,就可以考虑使用继承
‘is-a‘ mean B is a kind of A