跳到主要内容

missing_override_of_must_be_overridden

缺少对 '{0}' 的具体实现。

缺少对 '{0}' 和 '{1}' 的具体实现。

缺少对 '{0}'、'{1}' 等 {2} 个项目的具体实现。

描述

#

当带有 `@mustBeOverridden` 注解的实例成员在子类中未被覆写时,分析器会产生此诊断。

示例

#

以下代码会产生此诊断,因为当 A.m 被注解为 @mustBeOverridden 时,类 B 没有覆写继承的方法 A.m

dart
import 'package:meta/meta.dart';

class A {
  @mustBeOverridden
  void m() {}
}

class B extends A {}

常见修复方法

#

如果该注解适用于此成员,则在子类中覆写该成员

dart
import 'package:meta/meta.dart';

class A {
  @mustBeOverridden
  void m() {}
}

class B extends A {
  @override
  void m() {}
}

如果该注解不适用于此成员,则移除该注解

dart
class A {
  void m() {}
}

class B extends A {}