JAVA8之函数式接口返回实例

Posted 河北凝讯科技订阅号

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JAVA8之函数式接口返回实例相关的知识,希望对你有一定的参考价值。

一.方法引用返回实例

      1.    构造器引用

        语法:Class::new

        构造器引用一般都会需要用的Supplier这个函数式编程的工具包(java.util.function),他是一个函数式接口.在后面会详细介绍,这一章节先只是使用方便展示.先看下Supplier类:

 首先创建一个Person类,其中必须有无参构造,不然会报错:

JAVA8之函数式接口返回实例

JAVA8之函数式接口返回实例

测试创建一个Person类:

JAVA8之函数式接口返回实例

  可见我们使用Person::new 创建了一个Supplier的实例,所以利用构造器引用创建了函数式接口的实例.

      2.    对象的方法引用(包括静态方法)

        语法:Class::method

        先介绍一下Iterable接口下新增的默认方法forEach(),在其中用到了Consumer接口,他与Supplier接口类似,在此不做讲解,在java8中支持了接口中放入默认方法,该方法的定义如下:

JAVA8之函数式接口返回实例

用方法引用的方法调用系统类的输出方法和Person类的run方法:

JAVA8之函数式接口返回实例

测试结果:

JAVA8之函数式接口返回实例process  finished   with   exit   code    o

调用成功.

二.    小结

        使用lambda表达式个人觉得最大的是使得代码看起来更简便,可以少写许多代码


以上是关于JAVA8之函数式接口返回实例的主要内容,如果未能解决你的问题,请参考以下文章

Java8新特性——Lambda表达式之四大核心函数式接口 & 方法/构造器/数组引用

Java8 - 新功能之函数式接口BinaryOperator

[二] java8 函数式接口详解 函数接口详解 lambda表达式 匿名函数 方法引用使用含义 函数式接口实例 如何定义函数式接口

玩转Java8Stream之函数式接口

Java8函数式接口简介

Java8新特性之函数式接口