Nar*_*hai 6 java lambda closures java-8
这是Java 8中::(双冒号)运算符的后续问题,其中Java允许您使用::运算符引用方法.
是否可以提供我创建的一些自定义功能接口并将其与::运营商一起使用?怎么做?
Hol*_*ger 11
"是否有可能提供我创建的一些自定义功能接口并将其与::运营商一起使用?怎么做?"
这是可能的,它就像你想象的那样简单:只需用一种方法创建一个界面.你甚至不需要@FunctionalInterface注释; 这个注释只是记录你的意图,并有助于在编译时检测错误,类似于@Override.
所以也许你已经在Java 8之前的项目中创建了这样的接口......
class Foo {
// nothing new:
public interface FooFactory {
Foo createFoo();
}
// new in Java 8:
public static final FooFactory DEFAULT_FACTORY = Foo::new;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5147 次 |
| 最近记录: |