【发布时间】:2014-04-01 19:03:05
【问题描述】:
我很难弄清楚为什么 lambda 表达式可以分配给某些功能接口,但不能分配给其他接口。一个例子,使用来自Metrics library的一些功能接口:
Gauge<Double> foo = () -> { return null; };
RatioGauge bar = () -> { return null; };
第二条语句有编译错误(在 Eclipse 中):
此表达式的目标类型必须是函数式接口
据我所知,RatioGauge is a functional interface。我错过了什么吗?
【问题讨论】:
-
功能性接口?
-
抽象 类 不是功能性接口。
标签: java java-8 codahale-metrics