目錄

unnecessary_overrides

請勿覆寫方法來執行具有相同參數的父類別方法呼叫。

此規則自 Dart 2.0 起可用。

規則集:核心建議flutter

此規則具有可用的快速修正

詳細資訊

#

請勿覆寫方法來執行具有相同參數的父類別方法呼叫。

不良範例

dart
class A extends B {
  @override
  void foo() {
    super.foo();
  }
}

良好範例

dart
class A extends B {
  @override
  void foo() {
    doSomethingElse();
  }
}

在以下情況下,覆寫成員是有效的

  • 如果類型(回傳類型或參數類型)與父類別成員完全不同,
  • 如果將 covariant 關鍵字新增至其中一個參數,
  • 如果成員上存在文件註解,
  • 如果成員具有除了 @override 以外的其他註解,
  • 如果成員未使用 @protected 註解,而父類別成員則有。

noSuchMethod 是一個特殊方法,此規則不會檢查它。

用法

#

若要啟用 unnecessary_overrides 規則,請在 analysis_options.yaml 檔案的 linter > rules 下方新增 unnecessary_overrides

analysis_options.yaml
yaml
linter:
  rules:
    - unnecessary_overrides