跳到主要内容

initializer_for_non_existent_field

'{0}' 不是包含该构造函数的类中的字段。

描述

#

当构造函数初始化一个未在其包含该构造函数的类中声明的字段时,分析器会生成此诊断信息。构造函数无法初始化未声明的字段以及从超类继承的字段。

示例

#

以下代码会生成此诊断信息,因为初始化表达式正在初始化 x,但 x 不是类中的字段

dart
class C {
  int? y;

  C() : x = 0;
}

常见修复方法

#

如果应初始化其他字段,请将名称更改为该字段的名称

dart
class C {
  int? y;

  C() : y = 0;
}

如果该字段必须声明,请添加声明

dart
class C {
  int? x;
  int? y;

  C() : x = 0;
}