Liskov替换原则由计算机科学教LIskov提出
当子类型想要继承父类性的的所有功能时,必须满足的替换准则
1 子类型可以增加方法,但不能删除父类的方法
2 子类型需要实现抽象类型中的所有未实现方法
3 当子类覆盖或实现父类的方法是,方法的返回值要比父类更加严格
4当子类覆盖或实现父类的方法是,方法的形参数、要比父类方法的更为宽松/
5子类型中重写的方法不能跑出额外的异常
当父类向子类构造师,我们总希望可以实现的对象越来越具体,在这一个过程中返回值类型不变或更具体,异常的类型不变或更具体,这种变化规律被称为血变
反之则成为逆变