Java 8中的功能接口
发布时间:2020-12-14 05:23:55 所属栏目:Java 来源:网络整理
导读:我很难分类为什么lambda表达式可以分配给一些功能接口,而不是其他功能接口.一个例子,使用一些功能界面从 Metrics library: GaugeDouble foo = () - { return null; };RatioGauge bar = () - { return null; }; 第二个语句有一个编译错误(在Eclipse中): The
我很难分类为什么lambda表达式可以分配给一些功能接口,而不是其他功能接口.一个例子,使用一些功能界面从
Metrics library:
Gauge<Double> foo = () -> { return null; }; RatioGauge bar = () -> { return null; }; 第二个语句有一个编译错误(在Eclipse中):
据我所知,RatioGauge is a functional interface.我错过了什么吗? 解决方法
一个抽象类(即使它只有一个抽象方法)不是一个功能界面.只有一个接口可以是一个.
从JLS 9.8:
最初的想法是让abstact类被表达为lambda;它们被称为“SAM类型”,它代表“单抽象方法”.这是一个难以解决的问题. This thread谈谈为什么;基本上,基类的构造函数使得它变得困难. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐
热点阅读