里氏替换原则
通俗的讲就是:子类型必须能够替换掉它们的基类型。
继承是否合理我们需要用里氏替换原则来判断。是否合理并不是从继承的设计本身看,而是从应用场景的角度看。如果在应用场景中,也就是在程序中,子类可以替换父类,那么继承就是合理的,如果不能替换,那么继承就是不合理的。
通常,子类比父类的契约更严格,都是违反里氏替换原则的。一个类如果不是为了被继承而设计,那么最好不要继承它。粗暴的讲,如果不是抽象类或者接口,最好不要继承它,组合由于继承。
来源:oschina
链接:https://my.oschina.net/u/939952/blog/3164580