S1l*_*0rm 5 java lambda java-8
而不是像这样使用匿名类
register(new EventListener() {
@Override
public void apply(Event e) {
// do your work
}
});
Run Code Online (Sandbox Code Playgroud)
使用java 8我可以使用lambda表达式:
register(e -> (// do your work));
Run Code Online (Sandbox Code Playgroud)
但是如果我的界面中的方法被注释呢?
interface EventListener {
@Annotation
void apply;
}
Run Code Online (Sandbox Code Playgroud)
是否可以注释lambda表达式?(具体来说,我想使用带有lambda表达式的Guava的EventBus.register()方法)
看看这个:
基本上,您不能直接在 lambda 表达式中进行注释,但您可以使用扩展接口或类并通过调用 来访问注释Class#getAnnotatedInterfaces()
。我相信这应该回答你的问题。
希望这可以帮助,
圣地亚哥