跳到主要内容

extension_declares_member_of_object

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

描述

#

当扩展声明声明的成员与 Object 类中声明的成员同名时,分析器会生成此诊断。这样的成员永远无法使用,因为 Object 中的成员总是优先找到。

示例

#

以下代码会生成此诊断,因为 toStringObject 定义

dart
extension E on String {
  String toString() => this;
}

常见修复方法

#

移除该成员或重命名它,使其名称不与 Object 中的成员冲突

dart
extension E on String {
  String displayString() => this;
}