Reports the use of non-final static variables during class initialization.

In such cases, the code semantics may become dependent on the class creation order. Additionally, such cases may lead to the use of variables before their initialization, and generally cause difficult and confusing bugs.

Example:


  class Foo {
    public static int bar = 0;

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