mixin_application_no_concrete_super_invoked_member
該類沒有超類呼叫成員“{0}”的具體實現。
該類沒有超類呼叫 setter “{0}”的具體實現。
描述
#當混入應用包含對其超類成員的呼叫,並且該混入應用的超類中沒有該名稱的具體成員時,分析器會生成此診斷。
示例
#以下程式碼會產生此診斷,因為混入 M 包含呼叫 super.m(),而類 A 作為混入應用 A+M 的超類,沒有定義 m 的具體實現。
dart
abstract class A {
void m();
}
mixin M on A {
void bar() {
super.m();
}
}
abstract class B extends A with M {}常見修復
#如果您打算將混入 M 應用於具有 m 具體實現的另一個類,請將 B 的超類更改為該類。
dart
abstract class A {
void m();
}
mixin M on A {
void bar() {
super.m();
}
}
class C implements A {
void m() {}
}
abstract class B extends C with M {}如果您需要讓 B 成為 A 的子類,則在 A 中新增 m 的具體實現。
dart
abstract class A {
void m() {}
}
mixin M on A {
void bar() {
super.m();
}
}
abstract class B extends A with M {}