跳到主要內容

final_not_initialized

final 變數“{0}”必須被初始化。

描述

#

當 final 欄位或變數未初始化時,分析器會生成此診斷資訊。

示例

#

以下程式碼會生成此診斷資訊,因為 x 沒有初始化器:

dart
final x;

常見修復方法

#

對於變數和靜態欄位,您可以新增初始化器:

dart
final x = 0;

對於例項欄位,您可以像上一個示例那樣新增初始化器,或者在每個建構函式中初始化欄位。您可以使用初始化形式引數(initializing formal parameter)來初始化欄位:

dart
class C {
  final int x;
  C(this.x);
}

您也可以在建構函式中使用初始化列表來初始化欄位:

dart
class C {
  final int x;
  C(int y) : x = y * 2;
}