上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
3.2.3 接口的继承
接口也可以通过关键字extends继承其他接口。子接口将继承父接口中所有的常量和抽象方法。此时,子接口的非抽象派生类不仅要实现子接口的抽象方法,而且要实现继承来的抽象方法。
【例3-5】 接口的继承。
interface A{ String a = "接口A中常量"; void showA(); } interface B extends A{ String b = "接口B中常量"; void showB(); } interface C extends B{ String c = "接口C中常量"; void showC(); } class InterfaceABC implements C{ public void showA(){//重写A接口中的方法 System.out.println(a); } public void showB(){//重写B接口中的方法 System.out.println(b); } public void showC(){//重写C接口中的方法 System.out.println(c); } } public class InterfaceDemo{ public static void main(String[] args) { InterfaceABC i=new InterfaceABC();//将接口关联到满足其规范的具体对象上 i.showA();//通过接口完成对对象方法的调用 i.showB(); i.showC(); } }
程序运行结果如下:
接口A中常量 接口B中常量 接口C中常量
特别提示:
● 继承不允许循环继承或继承自己。
● 接口可以多继承,即可以有多个直接父接口。而类只允许单继承。如【例3-5】中的接口C可以如下定义:
interface C extends A,B
表示C继承于A和B