flutter - 你如何在 dart 中执行抽象类的继承?错误:超类 SpanishData 没有零参数构造函数
问题描述
我正在尝试创建一个名为 SpanishData 的抽象类然后我想创建另一个名为 alphabet 的类来扩展西班牙数据
我收到一个错误:超类 SpanishData 没有零参数构造函数。我该如何解决?
这是我的代码:
abstract class SpanishData{
String englishWord;
String spanishWord;
String mp3;
SpanishData(this.englishWord,this.spanishWord,this.mp3);
void getList (){
}
}
//the alphabet class
import '../SpanishDataAbstract.dart';
class Alphabet extends SpanishData{
@override
void getList(
)
}
解决方案
您需要参考parent class
您class
正在扩展的属性。您可以使用super
关键字来执行此操作。
The super() method on a class constructor allows a subclass to pass arguments and execute the constructor of its superclass.
下面的代码有效:
abstract class SpanishData{
String englishWord;
String spanishWord;
String mp3;
SpanishData(this.englishWord,this.spanishWord,this.mp3);
void getList (){
}
}
class Alphabet extends SpanishData{
// create a constructor of the alphabet class and call the parent constructor
Alphabet(String englishWord, String spanishWord, String mp3) : super(englishWord, spanishWord, mp3);
@override
void getList(){}
}
推荐阅读
- ios - 在 ViewController 出现之前加载数据/图形/背景的方法
- javascript - 剑道网格截断小数
- eclipse - Eclipse,mvn eclipse:clean eclipse:eclipse,错误:找不到或加载主类
- php - PHP检测是否正在设置或更改公共属性
- android - Flutter Android Build 失败并出现异常“火炬:verifyReleaseResources”
- javascript - 当我尝试从文件夹中执行要求时,我得到错误
- ios - 目标为 iOS 9 的 iOS 应用的 Intune SDK 集成
- c# - 如何获得统一资产包清单?
- ruby-on-rails - 将 chromdriver 上传到 AWS Lambda 层(Ruby 2.5)
- python - 来自按组分组的 DataFrame 数据中的完整天数