欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

里氏替换原则

程序员文章站 2022-03-05 16:04:18
...

 里氏替换原则

1 继承的好与坏

     1 好处

                代码共享,减少创建类的工作量,提高代码的重用性,提高代码的扩展性

      2 坏处

                 继承是侵入性的。降低了代码的灵活性,子类受到父类的约束。增强了耦合性,当修改父类时,要考虑子类的  修改。

 

 

2  怎么缩小继承所带来的弊端

        解决方案:里氏替换原则。

        定义:多有引用基类的地方必须能透明地使用其子类的对象。(只要父类能出现的地方子类就可以出现,而且替换子类也不会产生任何错误和异常)

 

 

4 引申的四个规则

     1 子类必须完全实现父类的方法

           里氏替换原则
            
    
    博客分类: java设计模式

 

 

     解决办法:

    

 里氏替换原则
            
    
    博客分类: java设计模式

     2 子类可以有自己的个性

            因为有这个规则,里氏替换原则不能反过来使用,在子类出现的地方,父类不一定可以胜任。有可能会出现ClassCastException。

 

     3 覆盖或者实现父类的方法的时候输入的参数可以被放大

           当子类的方法参数比父类的范围大的时候,如(子类方法参数是:Map,父类方法参数是:HashMap),这个时候构成了方法重载,而这样不会影响里氏替代原则。

 

      4 覆盖或者实现父类的方法的时候返回结果可以缩小

          如(父类方法是:返回Map,子类返回HashMap),这样我们调用的时候,不会违背里LSP原则。通常这样会是方法的重写。

 总结

      采用里氏替代原则可以增强程序的健壮性,版本升级的时候可以保持非常好的兼容性,即使增加子类,原有的子类也可以继续运行。

  • 里氏替换原则
            
    
    博客分类: java设计模式
  • 大小: 12.1 KB
  • 里氏替换原则
            
    
    博客分类: java设计模式
  • 大小: 12.6 KB

上一篇: 接口隔离原则

下一篇: 向伞哥学习