脚本宝典收集整理的这篇文章主要介绍了JDK8新特性,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
lambda表达式是Java8新增特性,它可以用来简化匿名内部类的写法。注意:Lambda表达式只能简化函数式接口的匿名内部类的写法形式
lambda表达式的简化格式
(匿名内部类被重写方法的形参列表) -> {
被重写方法的方法体代码
}
lambda表达式的目标类型必须是"函数式接口",函数式接口代表只包含一个抽象方法的接口。函数式可接口可以包含多个默认方法、类方法,但只能声明一个抽象方法。在函数式接口上都有一个 @FunctionalInterface
注解,该注解用于告诉编译器执行更严格检查——检查该接口必须是函数式接口,否则编译器就会报错
java.util.function 包下预定义了大量函数式接口,典型地包含如下四类接口
如果lambda表达式的代码只有一条,还可以在代码块中使用方法引用和构造器引用
种类 | 实例 | 说明 |
---|---|---|
引用类方法 | 类名::类方法 | 函数式接口中被实现方法的全部参数传给该类方法作为参数 |
引用特定对象的实例方法 | 特定对象::实例方法 | 函数式接口中被实现方法的全部参数传给该方法作为参数 |
引用某类对象的实例方法 | 类名::实例方法 | 函数式接口中被实现方法的第一个参数作为调用者,后面的参数全部传给该方法作为参数 |
引用构造器 | 类名::new | 函数式接口中被实现方法的全部参数传给该构造器作为参数 |
以上是脚本宝典为你收集整理的JDK8新特性全部内容,希望文章能够帮你解决JDK8新特性所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。