Lambda具有非功能接口

时间:2017-05-04 17:46:15

标签: java lambda java-8 functional-interface

我目前正在阅读Java 8 Lambda表达式。我了解到了,

  • Lambda表达式只能在功能接口上运行(即只有一个抽象方法的接口)。

我也了解到了,

  • lambda表达式的签名由一个抽象方法的签名决定。

我的问题是,如果我们在一个接口中有两个输入参数类型不同的方法而没有。对于输入参数,为什么lambda表达式不能从任何一个方法中推导出它的签名?毕竟,它只需要找到函数的输入参数类型,不是吗?为什么Java 8创建者只限制了一种方法?

编辑: 这个link as commented by Ousmane Mahy Diaw的答案并没有真正回答,为什么不允许在功能界面中使用2个方法。答案就是说,要求Lambda表达式只有一个方法才能使用功能接口。

0 个答案:

没有答案