Generics 如何创建返回child';s类型,没有泛型类型,在Dart中?

Generics 如何创建返回child';s类型,没有泛型类型,在Dart中?,generics,dart,Generics,Dart,我有两个类,一个父类和一个子类,父类有一个方法返回子类的实例 对于泛型类型,我可以这样做: 导入“省道:镜像”; 班级家长{ T anotherMe(){ var classMirror=reflectClass(this.runtimeType); var instance=classMirror.newInstance(新符号(“”,[]).reflectee; 返回实例; } } 类子级扩展父级{ } 为了测试它,我编写了以下代码: main(){ 子项=新子项(); var-other

我有两个类,一个父类和一个子类,父类有一个方法返回子类的实例

对于泛型类型,我可以这样做:

导入“省道:镜像”;
班级家长{
T anotherMe(){
var classMirror=reflectClass(this.runtimeType);
var instance=classMirror.newInstance(新符号(“”,[]).reflectee;
返回实例;
}
}
类子级扩展父级{
}
为了测试它,我编写了以下代码:

main(){
子项=新子项();
var-other=child.anotherMe();
印刷品(另一份);
}
其中打印:

“Child”的实例 但是如果我不想让父级使用泛型类型怎么办?例如:

类父类{
类型childType;
父项(){
childType=this.runtimeType;
}
childType anotherMe(){
var classMirror=reflectClass(this.runtimeType);
var instance=classMirror.newInstance(新符号(“”,[]).reflectee;
返回实例;
}
}
代码不能被编译(当然),但是你可以得到我的想法。我这样问是因为我知道scala提供了如下内容:

def anotherMe:this.type={}

我发现它有时很有用,不知道我能否在Dart中也这样做

你能澄清一下你在这里想做什么吗?根据我在这里读到的内容,只需删除泛型并将该方法声明为
Parent-anotherMe()
,但我不认为这是你的意思?
Parent-anotherMe()
不是我想要的,尽管它可以工作,因为在Dart中类型系统是可选的。我想要一种在父对象中引用子对象类型的方法,如果IDE知道参数
T
也不能在IDE中帮助您,那么IDE可能会提供一些帮助,因为IDE所知道的关于
T
的一切都只是>>1)它是一个
通用的
参数,可能只有在运行时才知道2)您指定的信息:
T扩展父级
@读过这篇文章后,输入Scala,我明白你为什么要这么做了-听起来很舒服。不幸的是,我不认为你可以轻松地在Dart中重现这种行为-/