六大设计原则-里氏替换原则

1、开闭原则       
2、接口隔离原则
3、依赖倒置原则
4、迪米特原则            
5、里氏替换原则    
6、单一职责原则

 

里氏替换原则

什么是里氏替换原则?

里氏替换原则的定义:任何使用基类的地方,都可以透明的使用其子类。从定义中可以看出,它和继承差不多,我们也可以这样理解,里氏替换原则=继承+透明,也就是继承的加强版,取其继承的优点,剔除继承的缺点。

为什么要使用里氏替换原则:

例如,鸵鸟、燕子从生物学的角度来划分,它们都属于鸟,但从继承关系来看,由于它们不能继承“鸟”会飞的能力,所以它们不能定义成“鸟”的子类。因此如果把鸵鸟和燕子都继承“鸟”的特性,那么在程序中继承类的对象在基类出现的地方就会出现运行错误,为了避免这种错误,我们要遵循里氏替换原则:取消原来的继承关系重新设计它们之间的关系。

怎么样才算遵守里式替换原则?

父类实现的东西,子类就不要再写了(就是不要new隐藏);

如果想修改父类的行为,通过abstract或virtual来修改;

父类有的,子类必须有,如果出现了子类没有的东西,那么就应该断掉继承,再重新写一个父类

 

 

你可能感兴趣的:(六大设计原则)