クラス名で不必要に修飾されている static メンバーの使用箇所を報告します。

static メンバーが外部クラス、または外部クラスの super クラスにある場合は、クラスでの修飾は不要です。 そのような修飾は安全に除去できます。

例:


  class Foo {
    static void foo() {}
    static int x;

    void bar() {
      Foo.foo();
      System.out.println(Foo.x);
    }

    static void baz() { Foo.foo(); }
  }

クイックフィックス適用後:


  class Foo {
    static void foo() {}
    static int x;

    void bar() {
      foo();
      System.out.println(x);
    }

    static void baz() { foo(); }
  }

報告対象を切り替えるには、インスペクションのオプションを使用します。

また、static コンテキスト内にある static メンバーの使用箇所のみを報告するようにインスペクションを構成することもできます。 その場合は、static void baz() { Foo.foo(); } のみが報告されます。