gpt4 book ai didi

java - 在构造函数中使用对可重写方法的引用是否安全?

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:36:56 25 4
gpt4 key购买 nike

<分区>

当我使用在构造函数中调用可覆盖方法的 lambda 添加事件监听器时,我收到警告。如果我使用方法引用,我不会收到任何关于可覆盖方法或泄漏此方法的警告。我应该避免在构造函数中引用方法还是安全的?

这是一个简单的例子:

public class SomeClass {

public SomeClass(SomeObj obj) {
obj.addListener(this::handleEvent); // no warnings, is it really safe?
obj.addListener((event) -> handleEvent(event)); // warning about overridable method in constructor
}

private void handleEvent(Event event) {
event.doSomething(someMethod());
}

private void someMethod() {
...
}
}

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com