跳到主要内容

extension_type_declares_member_of_object

扩展类型不能声明与 'Object' 中声明的成员同名的成员。

描述

#

当扩展类型声明的主体包含与 Object 中声明的成员之一同名的成员时,分析器会产生此诊断。

示例

#

以下代码会产生此诊断,因为类 Object 已经定义了一个名为 hashCode 的成员

dart
extension type E(int i) {
  int get hashCode => 0;
}

常见修复方法

#

如果您需要一个具有已实现语义的成员,请重命名该成员

dart
extension type E(int i) {
  int get myHashCode => 0;
}

如果您不需要具有已实现语义的成员,请移除该成员

dart
extension type E(int i) {}