首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Java 8中“函数接口”的精确定义

Java 8中“函数接口”的精确定义
EN

Stack Overflow用户
提问于 2013-02-02 06:12:49
回答 8查看 8.8K关注 0票数 77

最近,我开始探索Java 8,我不太理解“函数接口”的概念,它是Java实现lambda表达式所必需的。在Java中有一个指向lambda函数的pretty comprehensive guide,但是我被the chapter that gives definition to the concept of functional interfaces卡住了。定义是这样的:

更准确地说,函数接口被定义为只有一个抽象方法的任何接口。

然后他继续举例,其中之一是Comparator接口:

公共接口比较器{ int compare(T o1,T o2);boolean equals(Object obj);}

我能够测试我可以使用lambda函数来代替比较器参数,并且它可以工作(即Collections.sort(list, (a, b) -> a-b))。

但是在比较器接口中,compareequals方法都是抽象的,这意味着它有两个抽象方法。那么,如果定义要求接口只有一个抽象方法,这怎么能起作用呢?这里我漏掉了什么?

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14655913

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档