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

conflicting_constructor_and_static_member

'{0}' は、このクラスでコンストラクタと静的フィールドの両方に使用できません。

'{0}' は、このクラスでコンストラクタと静的ゲッターの両方に使用できません。

'{0}' は、このクラスでコンストラクタと静的メソッドの両方に使用できません。

'{0}' は、このクラスでコンストラクタと静的セッターの両方に使用できません。

説明

#

名前付きコンストラクタと静的メソッドまたは静的フィールドが同じ名前を持っている場合に、アナライザーはこの診断を生成します。どちらもクラス名を使用してアクセスされるため、同じ名前を持つと参照が曖昧になります。

#

静的フィールド foo と名前付きコンストラクタ foo が同じ名前であるため、以下のコードはこの診断を生成します。

dart
class C {
  C.foo();
  static int foo = 0;
}

静的メソッド foo と名前付きコンストラクタ foo が同じ名前であるため、以下のコードはこの診断を生成します。

dart
class C {
  C.foo();
  static void foo() {}
}

一般的な修正

#

メンバーまたはコンストラクタのいずれかを名前変更してください。