클래스 초기화 중에 final이 아닌 static 변수 사용을 보고합니다.

이러한 경우, 코드 의미는 클래스 생성 순서에 따라 달라질 수 있습니다. 또한 이러한 경우, 변수가 초기화되기 전에 사용될 수 있어, 파악하기 어렵고 혼란스러운 오류가 보통 발생합니다.

예:


  class Foo {
    public static int bar = 0;

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