外部クラスのフィールドと名前がまったく同じメソッドパラメーターを報告します。 このような命名を行うと、まったく同じ名前のフィールドを使用することが意図されている場合にパラメーターを誤って使用する可能性があります。

パラメーターの名前を変更するクイックフィックスが提案されます。

例:


  class Main {
    private String value;

    public Main(String value) {
      value = value.toUpperCase();
    }
  }
  

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

  1. プロパティの設定を無視 - 単純な setter のパラメーターを無視します。
  2. サブクラスから不可視のスーパークラスフィールドを無視 - メソッドから不可視のスーパークラスにある private フィールドを無視します。
  3. コンストラクターの場合は無視 - コンストラクターのパラメーターを無視します。
  4. 抽象メソッドの場合は無視 - 抽象メソッドのパラメーターを無視します。
  5. インスタンスフィールドを不可視にする static メソッドのパラメーターを無視 - インスタンスフィールドを不可視にする static メソッドのパラメーターを無視し、外部クラスのインスタンスフィールドを不可視にする static 内部クラスにあるインスタンスメソッドのパラメーターを無視します。 このようなパラメーターは厳密に言えば不可視にはしていませんが、それでも混乱を招く可能性があります。