里氏替换原则

里氏替换原则,英文名称为Liskov Substitution Principle,缩写为LSP。它是由Barbara Liskov提出。

定义为:如果对每一个类型为T1的对象O1,都有类型为T2的对象O2,使得以T1定义的所有程序P,在所有的对象O1都替代为O2时,程序P的行为并没有变化,那么类型T2是类型T1的子类型。

也就是说:把基类都替换为子类,程序依然正常运行。

在运用里氏替换原则的时候,尽量将一些需要拓展的类或存在变化的类设计为抽象类或者接口,并将其作为基类,在程序中尽量针对基类对象进行编程。由于子类继承基类并重写基类的方法,在程序运行时,子类对象可以替换基类对象,如果需要对类的行为进行修改,可以通过扩展基类来增加新的的子类,而无需修改使用该基类对象的代码。

你可能感兴趣的:(里氏替换原则)