-
接口和继承的区别
1. 继承主要解决了代码复用性和可维护性的问题
2. 接口主要让代码更加规范,接口中设计好各种方法,不同的类可以有不同的实现
3. 继承必须要满足“ is a ”的关系;接口则只需要满足“ like a ”的关系
-
接口的多态传递
1. 当接口B继承了接口A,类C实现了接口B,那么实例化的类C可以直接指向接口A
public class Interface {
public static void main(String[] args) {
// 多态传递现象
A a = new InterfaceTest();
}
}
interface A {}
interface B extends A {}
class InterfaceTest implements B {}
2. 如果接口A中有抽象方法,那么类C也必须实现接口中所有的抽象方法
public class Interface {
public static void main(String[] args) {
// 多态传递现象
A a = new InterfaceTest();
}
}
interface A {
public abstract void m1();
}
interface B extends A {
}
class InterfaceTest implements B {
@Override
public void m1() {
// 实现接口中的方法
}
}