在JAVA8以后接口中可以写静态方法和默认方法以及函数接口
1.其中的静态方法需要用接口名调用。
2.对于函数接口需用@FunctionInterface 标识,但是函数中只能写一个抽象方法,此方法可以使用lambda表达式调用;
例子:
接口:
@FunctionalInterface
public interface T {
int add();
//静态
static void f1() {
System.out.println("接口中的静态方法");
}
//匿名
default void f2() {
System.out.println("接口中的静态方法");
}
}
测试:
public class Test {
public static void main(String[] args) {
//利用lambda表达式
T t1=()->{
return 10;
};
//对默认方法和静态方法的调用
System.out.println(t1.add());
T.f1();
t1.f2();
}
}
输出结果: