super_invocation_not_last
(之前称为 invalid_super_invocation
)
super 构造函数调用必须是初始化列表中的最后一项:'{0}'。
描述
#当构造函数的初始化列表中包含对超类(superclass)构造函数的调用,但该调用不是初始化列表中的最后一项时,分析器会生成此诊断。
示例
#以下代码会产生此诊断,因为超类(superclass)构造函数的调用不是初始化列表中的最后一项
dart
class A {
A(int x);
}
class B extends A {
B(int x) : super(x), assert(x >= 0);
}
常见修复方法
#将超类(superclass)构造函数的调用移至初始化列表的末尾
dart
class A {
A(int x);
}
class B extends A {
B(int x) : assert(x >= 0), super(x);
}