接口在JAVA中是一个抽象类型,是抽象方法的集合, 接口通常以interface来声明。接口类型可用来声明一个变量,他们可以成为一个空指针,或是被绑定在一个以此接口实现的对象。接口是隐式抽象的,当声明一个接口的时候,不必使用abstract关键字。
//接口示例
public interface A{
//接口中所有的成员变量都是公有的静态常量,不可改变。可以不填加修饰符,编译时自动添加 public static final,必须赋初始值
int i=0;
//接口中所有的方法都是公有的抽象方法,不可改变。可以不填加修饰符,编译时自动添加 public abstract
void A();
}
接口无法被实例化,但是可以被实现。一个实现接口的类,必须实现接口内所描述的所有方法,否则就必须声明为抽象类,类使用implements关键字实现接口。
//接口实现
public class D implements A{
@Override
public void A() {
}
}
一个接口能继承另一个接口,和类之间的继承方式比较相似。接口的继承使用extends关键字,子接口继承父接口的方法,接口允许多继承。
//接口继承
public interface A extends B,C{
}