dart从Map扩展生成一个错误,即Map中的默认构造函数不是生成的

dart从Map扩展生成一个错误,即Map中的默认构造函数不是生成的,dart,Dart,我试图从Map扩展如下: class TestClass extends Map { } class TestClass { Map attr; } 就这样,我在类“Map”中得到了一个错误构造函数“”,它不是生成的。 不知道该怎么办,我添加了这个:TestClass():super() 我还是犯了同样的错误 额外问题: 通过像上面那样扩展Map或创建一个具有Map属性的新类,哪种方法是最好的方法 class TestClass extends Map { } class Test

我试图从
Map
扩展如下:

class TestClass extends Map {
}
class TestClass {
    Map attr;
}
就这样,我在类“Map”中得到了一个错误
构造函数“”,它不是生成的。

不知道该怎么办,我添加了这个:
TestClass():super()

我还是犯了同样的错误

额外问题:

通过像上面那样扩展
Map
或创建一个具有
Map
属性的新类,哪种方法是最好的方法

class TestClass extends Map {
}
class TestClass {
    Map attr;
}
Map是一个抽象类(请参阅:),其工厂(查看源代码)创建默认HashMap实现

(您可以在编辑器中看到大部分内容:右键单击“映射”并选择“打开声明”)

简单地调用工厂会导致关于HashMap不是类的子类的错误

但我认为,简单地将HashMap子类化将得到您想要的,因为这是默认实现

还有一个额外的问题:hashmap子类化通常是一种反模式(至少在Java中,如果Dart使其更安全,请纠正我),而很少是您想要做的事情,特别是如果包含可以工作的话。我建议。

Map是一个抽象类(请参阅:),其工厂(查看源代码)创建了一个默认的HashMap实现

(您可以在编辑器中看到大部分内容:右键单击“映射”并选择“打开声明”)

简单地调用工厂会导致关于HashMap不是类的子类的错误

但我认为,简单地将HashMap子类化将得到您想要的,因为这是默认实现


还有一个额外的问题:hashmap子类化通常是一种反模式(至少在Java中,如果Dart使其更安全,请纠正我),而很少是您想要做的事情,特别是如果包含可以工作的话。我建议您这样做。

您是否尝试过扩展Map的一个具体子类
class Testclass扩展HashMap
在扩展
HashMap
时,我没有遇到任何错误,看起来还可以,但是
Map
HashMap
之间有什么区别您尝试过扩展Map的具体子类吗
class Testclass扩展HashMap
当扩展
HashMap
时,我没有发现错误,看起来还可以,但是
Map
HashMap
之间有什么区别