interface接口
Posted Kkky
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了interface接口相关的知识,希望对你有一定的参考价值。
当一个抽象类中的方法都是抽象的时候,这时可以将该抽象类用另一种形式定义和表示,就是接口 interface。
定义接口使用的关键字不是class,是interface.
对于接口当中常见的成员:而且这些成员都有固定的修饰符。
1,全局常量: public static final
2,抽象方法。public abstract
由此得出结论,接口中的成员都是公共的权限.
例1:
1 interface Demo 2 { 3 public static final int NUM = 4; 4 5 public abstract void show1(); 6 public abstract void show2(); 7 } 8 //类与类之间是继承关系,类与接口之间是实现关系。 9 /* 10 接口不可以实例化。 11 12 只能由实现了接口的子类并覆盖了接口中所有的抽象方法后,该子类才可以实例化。 13 否则,这个子类就是一个抽象类。 14 15 */ 16 17 18 class DemoImpl implements /*实现*/Demo 19 { 20 public void show1() 21 {} 22 23 public void show2() 24 { 25 26 } 27 } 30 /* 31 在java中不直接支持多继承,因为会出现调用的不确定性。***原因:继承的类方法中有方法体,而接口的方法中没有方法体。*** 32 所以java将多继承机制进行改良,在java中变成了多实现。 33 34 一个类可以实现多个接口。 35 36 */ 37 38 interface A 39 { 40 public void show(); 41 } 42 43 interface Z 44 { 45 public int add(int a,int b); //不用考虑怎么实现,由子类来完成。 46 } 47 51 class Test implements A,Z//多实现 52 { 53 54 public int add(int a,int b) 55 { 56 return a+b; 57 } 58 public void show(){} 59 60 }
1 /* 2 一个类在继承另一个类的同时,还可以实现多个接口。 3 */ 4 class Q 5 { 6 public void method() 7 {} 8 } 9 10 abstract class Test2 extends Q implements A,Z //Test2属于Q的体系,同时扩展了A,Z的功能。 11 { 12 13 } 14 /* 15 接口的出现避免了单继承的局限性。 16 17 */
例2:用的不多
1 interface CC 2 { 3 void show(); 4 } 5 interface MM 6 { 7 void method(); 8 } 9 10 interface QQ extends CC,MM//接口与接口之间是继承关系,而且接口可以多继承。【不存在方法体】 11 { 12 void function(); 13 } 14 15 class WW implements QQ 16 { 17 //覆盖3个方法。 18 public void show(){} 19 public void method(){} 20 public void function(){} 21 }
以上是关于interface接口的主要内容,如果未能解决你的问题,请参考以下文章