码迷,mamicode.com
首页 > 其他好文 > 详细

里氏代换原则(Liskov Substitution Principle,LSP)

时间:2014-05-08 17:56:27      阅读:306      评论:0      收藏:0      [点我收藏+]

标签:class   ext   strong   c   代码   设计   

子类必须能够替换其基类

这一思想体现为对继承机制的约束规范,只有子类能够替换基类时,才能保证系统在运行期内识别子类,这是保证继承复用的基础。

在父类和子类的具体行为中,必须严格把握继承层次中的关系和特征,将基类替换为子类,程序的行为不会发生任何变化。同时,这一约束反过来则是不成立的,子类可以替换基类,但是基类不一定能替换子类。

  Liskov替换原则,主要着眼于对抽象和多态建立在继承的基础上,因此只有遵循了Liskov替换原则,才能保证继承复用是可靠地。实现的方法是面向接口编程:将公共部分抽象为基类接口或抽象类,通过Extract
Abstract
Class,在子类中通过覆写父类的方法实现新的方式支持同样的职责。

  Liskov替换原则是关于继承机制的设计原则违反了Liskov替换原则就必然导致违反开放封闭原则

  Liskov替换原则能够保证系统具有良好的拓展性,同时实现基于多态的抽象机制,能够减少代码冗余,避免运行期的类型判别。

 

里氏代换原则(Liskov Substitution Principle,LSP),布布扣,bubuko.com

里氏代换原则(Liskov Substitution Principle,LSP)

标签:class   ext   strong   c   代码   设计   

原文地址:http://www.cnblogs.com/hjqc/p/3715795.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!