在Java中,接口(Interface) 是一种特殊的类,通常用于定义类与类之间的协议或契约,规定类必须实现哪些方法。接口本身只包含方法的声明,而不包含方法的具体实现。实现接口的类必须提供接口中声明的所有方法的具体实现。
1. 接口的基本语法
interface 接口名称 {
// 常量
public static final 类型 常量名称 = 值;
// 抽象方法(没有方法体)
返回类型 方法名(参数列表);
// 默认方法(可以有方法体)
default 返回类型 默认方法名(参数列表) {
// 方法体
}
// 静态方法(可以有方法体)
static 返回类型 静态方法名(参数列表) {
// 方法体
}
}
2. 接口的关键点
- 接口方法:接口中的方法默认是
public
和abstract
的,所以可以省略这两个修饰符。 - 接口变量:接口中的变量默认是
public static final
的,即常量。 - 类实现接口:一个类通过
implements
关键字实现一个接口,必须实现接口中声明的所有方法(除非该类是抽象类)。 - 接口的多继承:一个类可以实现多个接口,从而支持多重继承的效果。
3. 接口的实现
定义接口
interface Animal {
// 常量
String species = "Unknown"; // 默认 public static final
// 抽象方法(没有方法体)
void sound();
// 默认方法
default void sleep() {
System.out.println("The animal is sleeping.");
}
// 静态方法
static void breath()