Java 教程是为 JDK 8 编写的。本页中描述的示例和实践未利用在后续版本中引入的改进。
接口声明由修饰符,关键字 interface
,接口名称,逗号分隔的父接口列表(如果有)和接口主体组成。例如:
public interface GroupedInterface extends Interface1, Interface2, Interface3 { // constant declarations // base of natural logarithms double E = 2.718282; // method signatures void doSomething (int i, double x); int doSomethingElse(String s); }
public
访问说明符表示该接口可以被任何包中的任何类使用。如果未指定接口是 public 接口,则只能在与接口相同的程序包中定义的类上访问你的接口。
接口可以继承其他接口,就像类子类化(subclass)或继承(extend)另一个类一样。然而,虽然类只能继承一个类,但接口可以继承任意数量的接口。接口声明包括它继承的所有接口的逗号分隔列表。
接口主体可以包含 abstract methods,default methods 和 static methods。接口中的抽象方法后跟分号,但没有大括号(抽象方法不包含实现)。默认方法使用 default
修饰符定义,静态方法使用 static
关键字定义。接口中的所有抽象,默认和静态方法都隐式 public
,因此你可以省略 public
修饰符。
此外,接口可以包含常量声明。接口中定义的所有常量值都隐式为 public
,static
和 final
。再一次,你可以省略这些修饰符。