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
之间有什么区别