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

inconsistent_inheritance

スーパークラスまたはインターフェースが、'{0}' の有効なオーバーライドを提供していません: {1}。

説明

#

この診断は、クラスがメンバーの競合するシグネチャを 2 つ以上継承し、すべての継承されたシグネチャを満たす実装を提供しない場合に、アナライザーによって生成されます。

#

以下のコードは、CA から m の宣言を継承しており、その実装が B から継承された m のシグネチャと一致しないため、この診断を生成します。

dart
class A {
  void m({int? a}) {}
}

class B {
  void m({int? b}) {}
}

class C extends A implements B {
}

一般的な修正

#

すべての継承されたシグネチャを満たすメソッドの実装を追加してください。

dart
class A {
  void m({int? a}) {}
}

class B {
  void m({int? b}) {}
}

class C extends A implements B {
  void m({int? a, int? b}) {}
}