【发布时间】:2019-11-12 16:42:23
【问题描述】:
我有一个抽象的 Dart 类,其中包含一些抽象方法和一个具体的已实现方法,我希望在所有子类中保持一致。
IntelliJ 的 Dart 分析系统在子类中报告我的已实现方法不存在具体实现 - 尽管我可以看到抽象具有具体实现。
我也尝试在我的子类中实现该方法并调用超类,但这也被报告为未实现。抽象类和子类都在同一个文件中。
abstract class Exporter {
List<String> getHeaderRow();
List<dynamic> getEntryAsRow(EntriesData entry);
/// Concrete implementation
dynamic getVal(dynamic value) {
return null;
}
}
// ExpenseReport underlined in red: missing concrete implementation of getVal
class ExpenseReport implements Exporter {
List<String> getHeaderRow() {
return [];
}
List<dynamic> getEntryAsRow(EntriesData entry) {
return [];
}
// dynamic getVal(dynamic value) {
// super.getVal(value); // IntelliJ reports "getval" as abstract in superclass
// }
}
【问题讨论】:
标签: dart abstract-class