メインコンテンツにスキップ

override_on_non_overriding_member

フィールドは、継承されたgetterまたはsetterをオーバーライドしていません。

getterは、継承されたgetterをオーバーライドしていません。

メソッドは、継承されたメソッドをオーバーライドしていません。

setterは、継承されたsetterをオーバーライドしていません。

説明

#

クラスメンバーに@overrideアノテーションが付与されていますが、そのメンバーがクラスのスーパークラスのいずれにも宣言されていない場合に、アナライザーはこの診断を生成します。

#

以下のコードは、mCのスーパークラスのいずれにも宣言されていないため、この診断を生成します。

dart
class C {
  @override
  String m() => '';
}

一般的な修正

#

メンバーが異なる名前のメンバーをオーバーライドすることを意図している場合は、メンバーの名前を同じになるように更新してください。

dart
class C {
  @override
  String toString() => '';
}

メンバーがスーパークラスから削除されたメンバーをオーバーライドすることを意図している場合は、サブクラスからそのメンバーを削除することを検討してください。

メンバーを削除できない場合は、アノテーションを削除してください。