里氏替换原则

 里氏替换原则的定义:所有引用基类的地方必须能透明的使用子类的对象。

其中包换四层含义:

1.子类必须完全实现父类的方法;

2.子类可以有自己的个性

3.覆盖或实现父类的方法时,输入参数可以放大。(Java中覆盖父类的方法类似于重载函数,函数在运行的时候会选择最小可满足参数来运行)

父类:public int getMax(HashMap nums);

子类:public int getMax(Map nums);

当运行:getMax(HashMap nums)的时候,会调用父类的方法,因为父类方法中的类型更细致。

4.复写父类中的函数时,方法的返回值可以被变小。

父类:public Map getInfo();

子类:public HashMap getInfo();

原文地址:https://www.cnblogs.com/limingluzhu/p/3061468.html