美文网首页
构建扩展性更好的系统——里氏替换原则

构建扩展性更好的系统——里氏替换原则

作者: 青峰星宇 | 来源:发表于2018-05-23 10:43 被阅读16次

    里氏替换原则(SLP)

    就不说高大上的学术定义了,通俗讲,就是只要父类能出现的地方子类就可以出现,而且替换为子类也不会产生任何的错误或异常,使用者可能根本就不需要知道是父类还是子类。讲白了,里氏替换原则的核心原理就是抽象(抽象有依赖于继承这个特性)。下面我们顺便说下继承的优缺点。

    继承的优点:

    1)代码重用,减少创建类的成本,每个子类都拥有父类的所有方法和属性。

    2)子类与父类基本相似,但又与父类有所区别

    3)提高代码的可扩展性

    继承的缺点:

    1)继承是侵入式的,只要继承必须拥有父类的所有属性和方法

    2)可能造成子类代码冗余、灵活性降低,因为子类必须拥有父类的属性和方法

    里氏替换原则和开闭原则往往是生死相依、不离不弃的,通过里氏替换来达到对扩展开放,对修改关闭的效果。

    然而,这两个原则都同时强调了一个OOP的重要特性——抽象

    因此,在开发过程中运用抽象是走向代码优化的重要一步。


    相关文章

      网友评论

          本文标题:构建扩展性更好的系统——里氏替换原则

          本文链接:https://www.haomeiwen.com/subject/vszljftx.html