JDK1.8 接口的新特性

版权声明:转载请标明原作者及地址 https://blog.csdn.net/cauchy6317/article/details/85197220

在JDK1.8中对接口的一些改动。

  1. 函数式接口的注解@FunctionalInterface
  2. 接口内的default 方法和static 方法

函数式接口的概念:只有一个抽象方法的接口,其中抽象接口的接口名不能和Object中的方法重名。
若重名则这个接口不能算是函数式接口。
jdk1.8提供了一个注解@FunctionalInterface,当用@FunctionalInterface注解在接口上时,若不是函数式接口,则编辑器报错(Intellij IDEA)。
在这里插入图片描述
这里因为我们定义了两个抽象方法,所以报错。
在这里插入图片描述
这里是因为我们定义方法和Object中的方法重名,所以报错。

在这里插入图片描述
jdk1.8扩展了接口的default和static方法,也是在缩小接口和抽象类的差异性。
使得接口有了默认方法,更具有灵活性。换句话说就是,接口在吸收抽象类的优点。

猜你喜欢

转载自blog.csdn.net/cauchy6317/article/details/85197220