1.用法
在jdk1.8中,引入了default关键字,该关键字可以修饰接口中的方法,并在接口中实现该方法。这打破了接口中不能实现方法的规定,是一个重大变革。示例如下:
public interface DefaultInterface {
String ceshi="ceshi";//接口中可以定义变量值
//用default修饰的方法,可以直接实现。且在实现类中,可以直接调用该方法,也可以对该方法进行重写
default public void demo(){
System.out.println("接口实现了方法");
}
}
public class DefaultImpl implements DefaultInterface {
public void ceshi(){
ceshi.toString();
demo();//实现类中,直接使用该方法
}
}
2.适用场景
当我们修改一个接口时,比如,我们要在原有接口中新增一个方法时,那么,它的实现类,都要实现这个方法,否则编译就会出错。如果这个接口的实现类很多的话,改起来就特别麻烦。所以,jdk引入了default关键字,在接口中实现方法,这样,实现类中就无需逐个修改了。
我们在实际开发中,当一个方法是接口中共有的,共享的情况下,可以考虑用default关键字修饰该方法,并在接口中进行方法的定义。