Dart IntelliJ报告抽象类缺少具体方法的实现,但方法是在抽象类中实现的?

Dart IntelliJ报告抽象类缺少具体方法的实现,但方法是在抽象类中实现的?,dart,abstract-class,Dart,Abstract Class,我有一个抽象的Dart类,它包含一些抽象方法和一个具体的实现方法,我希望在所有子类中保持一致 IntelliJ的Dart分析系统在子类中报告我的实现方法不存在具体的实现——尽管我可以看到抽象有具体的实现 我还尝试在我的子类中实现该方法并调用该超类,但也有报告称该方法未实现。抽象类和子类都在同一个文件中 abstract class Exporter { List<String> getHeaderRow(); List<dynamic> getEntryAsRow

我有一个抽象的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
//  }

}
抽象类导出器{
列出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

非常感谢。我甚至没有注意到这个错误。谢谢!我甚至没有注意到这个错误。