implements 子句中的可空类型
类、mixin 或扩展类型不能实现可空类型。
描述
#当类、mixin 或扩展类型声明中包含 implements
子句,并且接口后跟随 ?
时,分析器会产生此诊断。
指定可空接口是无效的,因为这样做没有意义;它不会改变包含 implements
子句的类继承的接口。
但是请注意,将可空类型用作接口的类型实参是有效的,例如 class A implements B<C?> {}
。
示例
#以下代码会产生此诊断,因为 A?
是可空类型,而可空类型不能用于 implements
子句。
dart
class A {}
class B implements A? {}
常见修复方法
#从类型中移除问号。
dart
class A {}
class B implements A {}