设计模式(4) --里氏替换原则

产生原因:继承时子类重写引起的问题

设计模式(4) --里氏替换原则

什么是里氏替换原则

设计模式(4) --里氏替换原则
看了解释更不知道啥意思。其实关键就是一句话 子类中尽量不要去写重写子类的方法,可以通过聚合,组合,依赖来解决问题.

举例说明

不遵循里氏替换原则的案例

类图
设计模式(4) --里氏替换原则
代码
设计模式(4) --里氏替换原则
运行结果:
设计模式(4) --里氏替换原则
显然,用户可能会混淆子类和父类重写方法的结果!!!!

改进方案

类图
设计模式(4) --里氏替换原则
代码
设计模式(4) --里氏替换原则
运行结果:
设计模式(4) --里氏替换原则


完美