overridden_fields
請勿覆寫欄位。
詳細資訊
#請勿覆寫欄位。
覆寫欄位幾乎總是無意之舉。無論如何,這都是一種不好的做法。
不良範例
dart
class Base {
Object field = 'lorem';
Object something = 'change';
}
class Bad1 extends Base {
@override
final field = 'ipsum'; // LINT
}
class Bad2 extends Base {
@override
Object something = 'done'; // LINT
}
良好範例
dart
class Base {
Object field = 'lorem';
Object something = 'change';
}
class Ok extends Base {
Object newField; // OK
final Object newFinal = 'ignore'; // OK
}
良好範例
dart
abstract class BaseLoggingHandler {
Base transformer;
}
class LogPrintHandler implements BaseLoggingHandler {
@override
Derived transformer; // OK
}
啟用
#若要啟用 overridden_fields
規則,請在您的 analysis_options.yaml
檔案中,於 linter > rules 下新增 overridden_fields
analysis_options.yaml
yaml
linter:
rules:
- overridden_fields
如果您改用 YAML map 語法來設定 linter 規則,請在 linter > rules 下新增 overridden_fields: true
analysis_options.yaml
yaml
linter:
rules:
overridden_fields: true
除非另有說明,否則本網站文件內容反映 Dart 3.7.1 版本。頁面最後更新於 2025-03-07。 檢視原始碼 或 回報問題。