クラスを初期化中に非 finalstatic 変数が使用されていることを報告します。

このような場合、コードのセマンティクスがクラスの作成順序に依存するようになる可能性があります。 また、初期化されていない変数の使用を誘発する可能性があり、得てして難解で分かりにくいバグを引き起こします。

例:


  class Foo {
    public static int bar = 0;

    static {
      System.out.println(bar);
    }
  }