invalid_non_virtual_annotation
註解 '@nonVirtual' 只能應用於具體例項成員。
描述
#當在非類、mixin 或列舉成員的宣告上找到 nonVirtual 註解,或者該成員不是具體例項成員時,分析器會產生此診斷。
示例
#以下程式碼會產生此診斷,因為註解位於類宣告上,而不是類內部的成員上
dart
import 'package:meta/meta.dart';
@nonVirtual
class C {}以下程式碼會產生此診斷,因為方法 m 是一個抽象方法
dart
import 'package:meta/meta.dart';
abstract class C {
@nonVirtual
void m();
}以下程式碼會產生此診斷,因為方法 m 是一個靜態方法
dart
import 'package:meta/meta.dart';
abstract class C {
@nonVirtual
static void m() {}
}常見修復方法
#如果宣告不是類、mixin 或列舉的成員,則移除該註解
dart
class C {}如果該成員預期是具體例項成員,則使其成為具體例項成員
dart
import 'package:meta/meta.dart';
abstract class C {
@nonVirtual
void m() {}
}如果該成員預期不是具體例項成員,則移除該註解
dart
abstract class C {
static void m() {}
}