在Java中,default
是一个关键字,用于定义接口中的默认方法。默认方法是在接口中提供了一个默认的实现,当一个类实现了该接口但没有提供该方法的实现时,将自动使用默认方法的实现。
使用default
定义默认方法的语法如下:
public interface MyInterface {
// 抽象方法
void method1();
// 默认方法
default void method2() {
// 默认实现
}
}
在实现接口时,可以选择性地覆盖默认方法,也可以直接继承默认方法的实现,如下所示:
public class MyClass implements MyInterface {
@Override
public void method1() {
// 实现method1方法
}
// 可选性地覆盖默认方法
@Override
public void method2() {
// 实现method2方法
}
}
需要注意的是,一个接口可以有多个默认方法,实现类可以选择性地覆盖其中的某些默认方法,也可以使用interfaceName.super.methodName()
的语法调用接口中的默认方法。
另外,default
关键字在Java 8之后引入,用于支持接口的默认方法。