设计原则-里氏代换原则

里氏代换原则: 全部引用基类(父类)的地方, 必须能透明地使用其子类的对象..net

里氏代换原则告诉咱们, 在软件系统中, 将一个基类对象替换成它的子类对象, 程序将不会产生任何错误和异常, 反过来则不成立, 若是一个软件实体使用的是一个子类对象的话, 那么它必定可以使用基类对象.设计

使用里氏代换原则须要注意的问题:对象

  1. 子类的全部方法必须在父类中声明, 或子类必须实现父类中声明的全部方法. 根据里氏代换原则, 为了保证系统的扩展性, 在程序中一般使用父类来定义, 若是一个方法只存在于子类中, 在父类中不提供相应的声明, 则没法在以父类定义的对象中使用该方法.
  2. 咱们在运用里氏代换原则时, 尽可能把父类设计成抽象类或者接口, 让子类继承父类或者实现接口, ,并实如今父类中声明的方法, 运行时, 子类实例替换父类实例, 咱们能够很方便的扩展系统功能, 同时无需修改原有子类的代码, 增长新的功能能够经过增长一个新的子类来实现. 里氏代换原则是开闭原则的具体实现手段之一.

里氏代换原则是开闭原则的具体实现手段之一.blog

废话那么多, 说白了里氏代换原则就是多肽嘛, 搞懂了多肽的性质就搞懂了里氏代换原则. 我以为开发中的多肽就是里氏代换原则的例子, 如出一辙, 彻底符合.继承

原文在这里, 这里写的更加详细.接口

Reference: http://blog.csdn.net/lovelion/article/details/7540445开发

相关文章
相关标签/搜索