里氏替换原则
里氏替换原则的定义:所有引用基类的地方必须能透明的使用子类的对象。
其中包换四层含义:
1.子类必须完全实现父类的方法;
2.子类可以有自己的个性
3.覆盖或实现父类的方法时,输入参数可以放大。(Java中覆盖父类的方法类似于重载函数,函数在运行的时候会选择最小可满足参数来运行)
父类:public int getMax(HashMap nums);
子类:public int getMax(Map nums);
当运行:getMax(HashMap nums)的时候,会调用父类的方法,因为父类方法中的类型更细致。
4.复写父类中的函数时,方法的返回值可以被变小。
父类:public Map getInfo();
子类:public HashMap getInfo();