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

無効な可視性アノテーション使用(オーバーライド用)

メンバー「{0}」はオーバーライドにのみ使用できます。

説明

#

この診断は、visibleForOverriding アノテーションが付与されたインスタンスメンバーが、それが宣言されているライブラリの外部で、オーバーライド以外の理由で参照された場合にアナライザーによって生成されます。visibleForOverriding

#

以下の宣言を含むファイルa.dartがあるとします。

dart
import 'package:meta/meta.dart';

class A {
  @visibleForOverriding
  void a() {}
}

以下のコードは、メソッドmが呼び出されているため、この診断を生成します。これは、メソッドmが公開されている唯一の理由がオーバーライドを許可するためであるにもかかわらず行われています。

dart
import 'a.dart';

class B extends A {
  void b() {
    a();
  }
}

一般的な修正

#

メンバーの無効な使用を削除してください。