Dart 获取调用超级构造函数的类型

Dart 获取调用超级构造函数的类型,dart,Dart,如果一个类被其他类扩展 class x{ x(){ Type calledByClass = ?? } } class y extends x{ y:super(); } class z extends x{ z:super(); } 使用镜像,是否可以在x的构造函数内部获取调用超级构造函数的类型 例如,newz()将初始化calledByClass以键入z 请注意,我的超级构造函数不能有参数 void main(){ 新x(); 新y(); 新z(); } x类{

如果一个类被其他类扩展

class x{
  x(){
    Type calledByClass = ??
  }
}

class y extends x{
  y:super();
}

class z extends x{
  z:super();
}
使用镜像,是否可以在x的构造函数内部获取调用超级构造函数的类型

例如,
newz()
将初始化
calledByClass
以键入z

请注意,我的超级构造函数不能有参数

void main(){
新x();
新y();
新z();
}
x类{
x(){
类型calledByClass=this.runtimeType;
打印(“calledByClass:$calledByClass”);
}
}
类y扩展x{
y():super();
}
类z扩展了x{
z():super();
}
输出:


calledByClass:x
被调用的类:y
calledByClass:z

更难确定超类。

例如

for example new z() will initialize superClass to type x