我有一个用java 1.8编写的代码,我想将其转换为1.6版本。
此代码如下:
sourceSets {
main.java{
srcDirs = ['src/eu/conflicts', 'src/eu/utils']
include '**/*.java'
}
test.java{
srcDirs = ['src/eu/conflicts', 'src/eu/utils']
include '**/*Tests.java'
}
}
我应该如何改造它?
问候!
答案 0 :(得分:4)
在lambda函数之前,我们将实例化匿名类以实时实现接口。
这是一个界面,因为Consumer<MyListener>
不可用:
public interface MyConsumer {
public void accept(MyListener l);
}
然后你可以使用:
private void handleCanNotConnect(final Throwable cause) {
isConnected = false;
fireAll(new MyConsumer() {
@Override
public void accept(MyListener l) {
l.connectionFailed(cause);
}
});
}
private void fireAll(MyConsumer action){
action.accept(listener);
}
请注意,cause
标记为final
。