前言面向对象有人分为五大原则,分别为单一职责原则、开放封闭原则、依赖倒置原则、接口隔离原则、里氏替换原则。也有人分为六大原则,分别为单一职责原则、开放封闭原则、依赖倒置原则、接口隔离原则、里氏替换原则、迪米特法则。现在我们来介绍里氏替换原则里氏替换原则1)概念其概念是子类对象能够替换其基类对象被使用。听上面的概念好像很简单,不就是父类实现的方法就能被子类实现,父类在外部的调用,替换成子类也可以嘛。
里氏替换原则 基本介绍: 如果对每个类型T1的对象O1都有类型为T2的对象O2,使得以T1定义的所有程序P在所有对象O1都代换成O2时,程序P的行为没有发生变化,那么类型T2时类型T1下的子类型,即换句话来说,所有引用基类的地方必须透明地使用其子类的对象 在使用继承时,遵循里氏替换原则,在子类中尽量 ...
转载
2021-09-03 17:25:00
61阅读
2评论
OO中的继承性 1) 继承包含这样一层含义:父类中凡是已经实现好的方法,实际上是在设定
原创
2022-10-01 08:08:48
40阅读
传统的继承有其缺陷?良好的继承应该是在实现继承时,子类必须能够替换掉他们的基类,如果一个软件代码中使用的是基类的话,那么也一定可以使用其子类。里氏替换原则的好处保证了父类的复用性,同时也能够降低系统出错误的故障,防止误操作,同时也不会破坏继承的机制,这样继承才显得更有意义。指导原则。(1)子类可以实现父类的抽象方法,但是不能覆盖父类的非抽象方法。(2)子类中可以增加自己特有的方法。 &n
原创
2016-09-24 17:30:30
771阅读
里氏替换原则概念定义里氏代换原则(Liskov Substitution Principle):所有引用基类的地方必须能透明地使用其子类的对象。问题来。类B继
里氏替换原则里氏替换原则(Liskov Substitution Principle,LSP)● 第一种定义,也是最正宗的定义:If for
原创
2022-05-26 01:11:48
122阅读
一、定义 子类可以扩展父类的功能,但不能改变父类原有的功能(如下) ①、子类可以实现父类的抽象方法,但不能覆盖父类的非抽象方法。 ②、子类中可以增加自己特有的方法。 ③、当子类的方法重载父类的方法时,方法的前置条件(即方法的形参)要比父类方法的输入参数更宽松。 ④、当子类的方法实现父类的抽象方法时, ...
转载
2021-07-23 14:34:00
224阅读
2评论
这项原则最早是在1988年,由麻省理工学院的一位姓里的女士(Barbara Liskov)提出来的。 里氏替换原则通俗的来讲就是:子类
里氏替换原则,面相对象设计的基本原则之一。里氏替换原则中说,任何基类可以出现的地方,子类一定可以出现。LSP是继承服用的基石,只有当衍生类可以替换掉基类,软件单位的功能不受到影响时,基类才能真正被复用,而衍生类也能够在基类的基础上增加新的行为。里氏替换原则是对“开-闭”原则的补充。实现“开-闭”原则的关键步骤就是抽象化。而基类与子类的继承关系就是抽象化的具体实现,所以里氏替换原则是对实现抽象化的具
目录概念编码实例里氏替换原则总结源码概念里氏替换原则(Liskov Substitution Principle, LSP):一个软件实体如果适用一个父类的话,那一定适用于其子类,所有引用父类的地方必须能透明地使用其子类的对象,子类对象能够替换父类对象,而程序逻辑不变。里氏替换原则表眀,在软件中将一个基类对象替换成他的子类对象,程序将不会产生任何错误和异常,反之则不成立;如果一个软件实体使用的是一
原创
2022-01-25 16:39:06
179阅读
所谓里氏替换原则,指的是,子类型必须能够替换掉它们的父类型。事实上,当一个类继承了另外一个类,那么子类就拥有了父类中可以继承下来的属性和操作。理论上来说,此时使用子类型去替换掉父类型,应该不会引起原来使用付类型的程序出现错误。但是,很不幸的是,在某些情况下是会出现问题的。比如,如果子类型覆盖了父类型的某些方法,或者是子类型修改了付类型某些属性的值,那么原来使用父类型的程序就可能会出现错误,因为在运
《一、单一职责原则》《二、里氏替换原则》《三、依赖倒置原则》《四、接口隔离原则》《五、迪米特法则》《六、开闭原则》
爱恨纠葛的父子关系
在面向对象的语言中, 继承是必不可少的、非常优秀的语言机制,它有如下优点:
代码共享,减少创建类的工作量,每个子类都拥有父类的方法和属性;
提高代码的重用性;
子类可以形似父类,但又异于父类,”龙生龙,凤生凤,老鼠生来会打洞“是说子拥有父的”种“,”世界上没有
转载
2012-10-18 11:03:00
85阅读
# Java 里氏替换原则
在面向对象的编程中,里氏替换原则(Liskov Substitution Principle,LSP)是一个重要的设计原则。该原则是由计算机科学家Barbara Liskov于1987年提出的。里氏替换原则是面向对象设计的五个原则(SOLID)之一,它强调子类对象必须能够替换掉父类对象,而不影响程序的正确性。本文将介绍里氏替换原则的概念,并通过Java代码示例来解释它
里氏替换原则(Liskov Substitution Principel)是解决继承带来的问题。 继承的优点: 代码共享,减少创建类的工作量,每个子类都拥有父类的方法和属性; 提高代码的重用性; 子类可以形似父类,但又异于父类; 提高代码的可扩展性; 提高产品或项目的开放性。 继承的缺点: 继承是侵
转载
2022-07-28 11:54:09
131阅读
子类对象(object of subtype/derived class)能够替换程序(program)中父类对象(object of base/parent class)
如果对每一个类型为 T1的对象 o1,都有类型为 T2 的对象o2,使得以 T1定义的所有程序 P 在所有的对象 o1 都代换成 o2 时,程序 P 的行为没有发生变化,那么类型 T2 是类型 T1 的子类型。 有点绕口,通俗的讲: B类继承A类后,可以新增功能,但尽量不要重写A类的方法,也不要重载
转载
2018-07-26 19:22:00
96阅读
2评论