1 default method 默认方法。在接口的方法前增加default关键字,匿名类无需实现默认方法。一个接口里可以定义多个默认方法。
public class DefaultMethod {
interface Formula {
double calculate(int a);
default double sqrt(int a) {
return Math.sqrt(a);
}
}
public static void main(String[] args) {
Formula formula = new Formula() {
@Override
public double calculate(int a) {
return sqrt(a * 100);
}
};
double a = formula.calculate(100); // 100.0
double b = formula.sqrt(16); // 4.0
System.out.println(a);
System.out.println(b);
}
}
2