type_parameter_referenced_by_static
靜態成員不能引用類的型別引數。
描述
#當靜態成員引用類宣告的型別引數時,分析器會生成此診斷資訊。型別引數僅對類的例項有意義。
示例
#以下程式碼會產生此診斷資訊,因為靜態方法 hasType 引用了型別引數 T
dart
class C<T> {
static bool hasType(Object o) => o is T;
}常見修復方法
#如果該成員可以是例項成員,則移除關鍵字 static
dart
class C<T> {
bool hasType(Object o) => o is T;
}如果該成員必須是靜態成員,則使其成為泛型成員
dart
class C<T> {
static bool hasType<S>(Object o) => o is S;
}但請注意,T 和 S 之間沒有關係,因此第二個選項改變了原本可能預期的語義。