unnecessary_overrides
不要なオーバーライド。
説明
#インスタンスメンバーが継承されたメンバーをオーバーライドするものの、オーバーライドされたメンバーをまったく同じ引数で呼び出すだけで、アナライザーはこの診断を生成します。
例
#次のコードは、メソッド D.m がオーバーライドされたメソッドを呼び出す以外に何もしないため、この診断を生成します。
dart
class C {
int m(int x) => x;
}
class D extends C {
@override
int m(int x) => super.m(x);
}一般的な修正
#メソッドがオーバーライドされたメソッドよりもさらに何かを行うべきである場合は、不足している機能を実装してください。
dart
class C {
int m(int x) => x;
}
class D extends C {
@override
int m(int x) => super.m(x) + 1;
}オーバーライドされたメソッドを、戻り値の型または1つ以上のパラメータの型を変更することによって変更する必要がある場合、パラメータの1つを covariant にすること、ドキュメンテーションコメントを持つこと、または追加のアノテーションを持つことによって変更する必要がある場合は、コードを更新してください。
dart
import 'package:meta/meta.dart';
class C {
int m(int x) => x;
}
class D extends C {
@mustCallSuper
@override
int m(int x) => super.m(x);
}オーバーライドするメソッドがコードの意味を変更または強化しない場合は、削除してください。
dart
class C {
int m(int x) => x;
}
class D extends C {}