里氏替换原则

本文借鉴《大话设计模式》,算是对自己学习的总结,也希望分享下所学知识~~

里氏替换原则(LSP):子类型必须能够替换掉它们的父类型。

一个地方如果使用的是父类的话,那么一定适用于其子类,而且它察觉不出父类对象和子类对象的区别。
在软件里面,把所有的父类替换成它的子类,程序的行为没有变化。
说白了就是:
子类型能替换父类型。

也正是因为子类型的可替换性,才使得使用父类类型的模块在无需修改的情况下就可以扩展。

Animal animal = new Dog();//new Cat() ... 等等
animal.Eat();
animal.Move();
animal.Sleep();

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