And*_*yld 2 java null construction super
我有一对看起来像这样的课程;
public abstract class Class1 {
//...
public Class1() {
//...
function2();
//...
}
protected abstract void function2();
}
public class Class2 implements Class1 {
private final OnSomethingListener mOnSomethingListener = new OnSomethingListener() {
@Override
onSomething() {
doThatOtherThing();
}
}
protected void function2() {
//uses mOnSomethingListener
//however mOnSomethingListener is null when this function is called from super()
//...
}
public Class2() {
super();
}
}
Run Code Online (Sandbox Code Playgroud)
我假设监听器是null因为我有效地引用它super()并且它还没有实例化.但是,我想成功,final因为它确实如此.我可以让这个字段(监听器)及时初始化而不将它放在超类中(它不会使用监听器)吗?
| 归档时间: |
|
| 查看次数: |
1009 次 |
| 最近记录: |