Dart IntelliJ报告抽象类缺少具体方法的实现,但方法是在抽象类中实现的?
我有一个抽象的Dart类,它包含一些抽象方法和一个具体的实现方法,我希望在所有子类中保持一致 IntelliJ的Dart分析系统在子类中报告我的实现方法不存在具体的实现——尽管我可以看到抽象有具体的实现 我还尝试在我的子类中实现该方法并调用该超类,但也有报告称该方法未实现。抽象类和子类都在同一个文件中Dart IntelliJ报告抽象类缺少具体方法的实现,但方法是在抽象类中实现的?,dart,abstract-class,Dart,Abstract Class,我有一个抽象的Dart类,它包含一些抽象方法和一个具体的实现方法,我希望在所有子类中保持一致 IntelliJ的Dart分析系统在子类中报告我的实现方法不存在具体的实现——尽管我可以看到抽象有具体的实现 我还尝试在我的子类中实现该方法并调用该超类,但也有报告称该方法未实现。抽象类和子类都在同一个文件中 abstract class Exporter { List<String> getHeaderRow(); List<dynamic> getEntryAsRow
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
// }
}
抽象类导出器{
列出getHeaderRow();
列出getEntryAsRow(EntriesData条目);
///具体实施
动态getVal(动态值){
返回null;
}
}
//ExpenseReport以红色下划线:缺少getVal的具体实现
类ExpenseReport实现导出器{
列表getHeaderRow(){
返回[];
}
列表getEntryAsRow(EntriesData条目){
返回[];
}
//动态getVal(动态值){
//super.getVal(value);//IntelliJ在超类中将“getVal”报告为抽象
// }
}
说
class ExpenseReport implements Exporter
您的意思是ExpenseReport实现了Exporter接口,这反过来意味着它必须实现Exporter中声明的所有方法
如果要从抽象导出器继承已实现的方法,则需要对其进行如下扩展:
class ExpenseReport extends Exporter
说
您的意思是ExpenseReport实现了Exporter接口,这反过来意味着它必须实现Exporter中声明的所有方法
如果要从抽象导出器继承已实现的方法,则需要对其进行如下扩展:
class ExpenseReport extends Exporter
非常感谢。我甚至没有注意到这个错误。谢谢!我甚至没有注意到这个错误。