跳至主要內容

nullable_type_in_extends_clause

類不能繼承可空型別。

描述

#

當類宣告使用 extends 子句指定超類,並且超類後跟 ? 時,分析器會生成此診斷資訊。

指定可空超類無效,因為這樣做沒有意義;它不會改變包含 extends 子句的類所繼承的介面或實現。

然而,請注意,將可空型別用作超類的型別引數是*有效*的,例如 class A extends B<C?> {}

示例

#

以下程式碼會產生此診斷資訊,因為 A? 是可空型別,而可空型別不能在 extends 子句中使用

dart
class A {}
class B extends A? {}

常見修復

#

從型別中刪除問號

dart
class A {}
class B extends A {}