相关疑难解决方法(0)

为什么静态字段没有及时初始化?

以下代码打印null一次.

class MyClass {
   private static MyClass myClass = new MyClass();
   private static final Object obj = new Object();
   public MyClass() {
      System.out.println(obj);
   }
   public static void main(String[] args) {}
}
Run Code Online (Sandbox Code Playgroud)

为什么在构造函数运行之前没有初始化静态对象?

更新

我只是在没有注意的情况下复制了这个示例程序,我以为我们正在谈论2个Object字段,现在我看到第一个是MyClass字段..:/

java null static nullpointerexception

42
推荐指数
3
解决办法
2万
查看次数

标签 统计

java ×1

null ×1

nullpointerexception ×1

static ×1