首页 > 解决方案 > Dart:基类变量初始化

问题描述

基类的变量如何在 dart 中获取初始值?我搜索了文档并尝试了 :super a: 、 A(a:..) 之类的东西,但找不到编译器接受的解决方案。

var myobject = B (a:'some text', b:'more text'); // this leads to: The named parameter 'a' isn't defined.

class A {
  String a;
  A({this.a});
}

class B extends A {
  String b;
  B({this.b});
}

标签: classdartsyntaxinitializationextend

解决方案


您想将 a 添加到 b 的构造函数的参数中,并使用它来调用超级构造函数,如下所示:

class A {
  String a;
  A({this.a});
}

class B extends A {
  String b;
  B({aa, this.b}) : super(a: aa);
}

构造函数文档涵盖了这个概念。


推荐阅读