annotate_overrides
成员 '{0}' 覆盖了继承的成员,但未标注 '@override'。
描述
#当成员覆盖了继承的成员,但未标注 @override
时,分析器会生成此诊断信息。
示例
#以下代码会生成此诊断信息,因为类 B
中的方法 m
覆盖了类 A
中同名的方法,但未标记为有意覆盖
dart
class A {
void m() {}
}
class B extends A {
void m() {}
}
常见修复方法
#如果子类中的成员旨在覆盖超类中的成员,则添加 @override
标注
dart
class A {
void m() {}
}
class B extends A {
@override
void m() {}
}
如果子类中的成员并非旨在覆盖超类中的成员,则重命名其中一个成员
dart
class A {
void m() {}
}
class B extends A {
void m2() {}
}