パラメーター節のないメソッドで、ミューテーターのような名前を持つ Java メソッドをオーバーライドしているものを報告します。

Scala では、パラメーター節を使用しないパラメーターなしの Java メソッドをオーバーライドすることができます。 これは主に、Scala コードが Java アクセサーメソッドを Scala アクセサーメソッドと同様にオーバーライドできるようにするための措置です。 正確に言えば、パラメーター節を使用しないことで、ある属性をフィールドまたはメソッドのどちらで実装するかによってクライアントのコードが影響を受けてはならないという統一アクセス原則に準拠できるようにしています。

ただし、副作用のあるメソッドについては、空のパラメーター節を持たせることが一般的なルールとされています。 これは、オーバーライド元のメソッドに副作用がある場合はオーバーライド先のメソッドも副作用のあるメソッドとして宣言しなければならないとするリスコフの置換原則に準拠していることになります。

クイックフィックスを使用すると、空のパラメーター節が追加されます。

例:


  import java.util

  class Test extends util.ArrayList[String] {
    override def clear: Unit = ???
  }

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


  import java.util

  class Test extends util.ArrayList[String] {
    override def clear(): Unit = ???
  }