1:接口的默认方法和静态方法;
静态方法使用static关键字修饰。
接口的默认方法使用default 关键字修饰,实现类不需要重写即可使用。实现类可以重写该方法,重写时不能使用default关键字修饰。如果实现类重写了默认方法,使用时使用的就是重写的方法。
2: 函数式接口
函数式接口(Functional Interface)就是一个有且仅有一个抽象方法,但是可以有多个非抽象方法的接口。函数式接口可以有一个或多个默认接口方法和静态方法。函数式接口可以定义java.lang.object的public方法(非final的方法);
函数式接口可以被隐式转换为lambda表达式。
函数式接口可以现有的函数友好地支持 lambda。
使用@FunctionalInterface注解将接口定义成函数式接口。当接口只有一个抽象方法时,不使用该注解时也是函数式接口,但是如果确认要将他定义函数式接口推荐使用@FunctionalInterface注解,避免被其他人添加了新的抽象方法。
java8新特性
最新推荐文章于 2024-03-05 10:15:00 发布