因为多态的特性,父类或者接口的引用是可以接受子类对象的。 比如: interface Test{} class Test1 implements Test{} class Test2 implements Test{} 上面声明一个Test接口,两个类Test1和Test2,分别实现Test接口。 表现耦合低的意思是说,删除调用层与接受层无关,比如:有这样一个方法可以这样设置参数类型 void say(Test test){System.out.println("");} 然后调用时可以这样传参数 Test1 t1 = new Test1(); Test2 t2 = new Test2(): say(t1); 或 say(t2); 这就是降低耦合,say方法只需要接口类型,具体传入哪个对象是无需关注的,因为接口是一种规则,
say方法进来的参数一定是实现Test接口类的对象。
即使有一天将Test1与Test2两个类删除,Test接口还在,那么say方法就有用,并且随意扩展一个新的类来实现Test接口,这叫做向后兼容。