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

unqualified_reference_to_non_local_static_member

スーパークラスの静的メンバーは、定義した型の名前で修飾する必要があります。

説明

#

この診断は、あるクラス内のコードが、スーパー クラスの名前をプレフィックスとして付けずに、スーパー クラスの静的メンバーを参照する場合に生成されます。静的メンバーは、宣言されたクラス内でのみ、プレフィックスなしで参照できます。

#

次のコードは、静的フィールド x が、定義したクラス名をプレフィックスとして付けずにゲッター g で参照されているため、この診断を生成します。

dart
class A {
  static int x = 3;
}

class B extends A {
  int get g => x;
}

一般的な修正

#

静的メンバーの名前を、宣言したクラス名で修飾してください。

dart
class A {
  static int x = 3;
}

class B extends A {
  int get g => A.x;
}