图解jdk1.8新特性
Posted kidezyq
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了图解jdk1.8新特性相关的知识,希望对你有一定的参考价值。
图解jdk1.8新特性(1)
函数式接口
总结起来就以下几点:
如果一个接口要想成为函数接口(函数接口可以直接用lambda方式简化),则必须有且仅有一个抽象的方法(非default和static)
可以通过注解
@FunctionalInterface
注解通过在编译时报错防止其他人破坏函数式接口
接口默认和静态方法
总结如下:
- jdk1.8之后接口可以实现default方法和static方法,其实就是将接口当做了一个抽象类
- default方法是非静态,必须通过接口的实现类来调用,接口实现类中可以对该方法进行重写。而static方法可以直接通过接口调用。
方法引用
总结如下:
- 方法的引用方式只能用在作为方法的参数,不能用在new创建对象上
- 方法引用作为参数时,原参数类型必须是函数式接口或者原本是一个lambda表达式
- 用方法引用new出来的对象,其实质上还是函数式接口的一个lamba子类,此时多态不起作用
以上是关于图解jdk1.8新特性的主要内容,如果未能解决你的问题,请参考以下文章
jdk1.8新特性——Stream(流)的终止操作(收集的示例演示)