一、基本概念
默认方法:
即接口可以有实现方法,而且不需要实现类去实现其方法,只需在方法名前面加个default关键字即可。
默认方法使你能够添加新的功能到你现有库的接口中,并确保与采用老版本接口编写的代码的二进制兼容性。
二、使用示例
公式接口:
/**
* 公式
*
* @author Kevin
* @date 2017-01-27
*/
public interface Formula {
/**
* 计算
*
* @author Kevin
*/
double calculate(double value);
/**
* 计算正平方根的默认方法
*
* @author Kevin
*/
default double square(double value) {
return Math.sqrt(value);
}
}
测试类:
/**
* 默认方法测试类
*
* @author Kevin
* @date 2017-01-27
*/
public class DefaultMethodsTest {
public static void main(String[] args) {
Formula formula = new Formula() {
@Override
public double calculate(double value) {
return square(value);
}
};
double result = formula.calculate(100);
System.out.println(result);
}
}
####三、参考文章 1.Java8 default methods 默认方法的概念与代码解析(http://developer.51cto.com/art/201404/435217.htm)
2.JAVA8 教程(https://my.oschina.net/hint/blog/739012)