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

final_not_initialized

final 変数 '{0}' は初期化される必要があります。

説明

#

final フィールドまたは変数が初期化されていない場合、アナライザーはこの診断を生成します。

#

以下のコードは、x に初期化子がないため、この診断を生成します。

dart
final x;

一般的な修正

#

変数および静的フィールドの場合、初期化子を追加できます。

dart
final x = 0;

インスタンスフィールドの場合、前の例で示したように初期化子を追加するか、すべてのコンストラクタでフィールドを初期化できます。初期化フォーマルパラメータを使用してフィールドを初期化できます。

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

コンストラクタの初期化子を使用してフィールドを初期化することもできます。

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