uml结构图讲解(概述耦合UML)
uml结构图讲解(概述耦合UML)现在网上几种比较经典的反例,“几维鸟不是鸟”,“鲸鱼不是鱼” 等等我打个比方,如果按照惯性和字面意思,如果我们将几维鸟也继承鸟类
测试类 Test
public class Test {
public static void main(String[] args) {
Father father = new Son();
System.out.println(father.speaking().get(0));
}
}
复制代码
运行结果:
speaking方法被调用
但是,如果反过来,将父类抽象方法返回值定义为范围较小的 ArrayList,将子类重写方法中,反而将返回值类型方法,设置为 List,那么程序在编写的时候就会报错
(2) 修正违背里氏替换原则的代码现在网上几种比较经典的反例,“几维鸟不是鸟”,“鲸鱼不是鱼” 等等
我打个比方,如果按照惯性和字面意思,如果我们将几维鸟也继承鸟类