跳到主要内容

non_abstract_class_inherits_abstract_member

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

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

缺少 '{0}'、'{1}'、'{2}'、'{3}' 以及其他 {4} 项的具体实现。

缺少 '{0}'、'{1}'、'{2}' 和 '{3}' 的具体实现。

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

描述

#

当一个具体类继承了一个或多个抽象成员,并且没有为至少一个抽象成员提供或继承实现时,分析器会产生此诊断信息。

示例

#

以下代码会产生此诊断信息,因为类 B 没有提供 m 的具体实现。

dart
abstract class A {
  void m();
}

class B extends A {}

常见修复

#

如果子类可以为部分或所有抽象继承成员提供具体实现,则添加这些具体实现。

dart
abstract class A {
  void m();
}

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

如果存在提供继承方法实现的 mixin,则将该 mixin 应用于子类。

dart
abstract class A {
  void m();
}

class B extends A with M {}

mixin M {
  void m() {}
}

如果子类不能为所有抽象继承成员提供具体实现,则将子类标记为抽象类。

dart
abstract class A {
  void m();
}

abstract class B extends A {}