派生クラスのフィールドのうち、スーパークラスのフィールドと名前がまったく同じものを報告します。 Java のフィールドは派生クラスではオーバーライドできないため、このような派生クラスのフィールドがあるとスーパークラスのフィールドが不可視になります。

このような命名を行うと、基底クラスの名前がまったく同じフィールドが意図されている場合に派生クラスのフィールドを誤って使用する可能性があります。

派生クラスのフィールドの名前を変更するクイックフィックスが提案されます。

例:

class Parent {
  Parent parent;
}
class Child extends Parent {
  Child parent;
}

このインスペクションでは、以下のオプションを構成できます。

  1. アクセスできないフィールドを無視する - このインスペクションがすべての名前の競合を報告すべきか、サブクラスから見えるフィールドとの競合のみを報告すべきかを指定します。
  2. static フィールドを不可視にする static フィールドを無視する - 基底クラスの static フィールドを不可視にする static フィールドを無視します。