通常而言,若是有两个具体类A、B有继承关系,那么一个最简单的修改方案是创建一个抽象类C,而后让类A和B成为抽象类C的子类。即若是有一个由继承关系造成的等级结构的话,那么在等级结构的树形图上面全部的树叶节点都应当是具体类,而全部的树枝节点都应当是抽象类或者接口。继承
里氏代换原则最终简化为一句话:"Subtypes must be substitutable for their base types", 里氏代换原则是对开闭原则的补充,它讲的是基类和子类的关系。只有当这种关系存在时,里氏代换关系才存在。 接口