是否可以在DART中将类类型作为变量传递?
我试着做以下几件事:
class Dodo
{
void hello() {
print("hello dodo");
}
}
void main() {
var a = Dodo;
var b = new a();
b.hello();
}
在python中,类似的代码可以很好地工作.在DART中,我在new a()
得到一个错误,抱怨a
不是一个类型.
可以将类对象用作变量吗? 如果没有,推荐的工作是什么?
是否可以在DART中将类类型作为变量传递?
我试着做以下几件事:
class Dodo
{
void hello() {
print("hello dodo");
}
}
void main() {
var a = Dodo;
var b = new a();
b.hello();
}
在python中,类似的代码可以很好地工作.在DART中,我在new a()
得到一个错误,抱怨a
不是一个类型.
可以将类对象用作变量吗? 如果没有,推荐的工作是什么?
您可以使用Mirrors接口:
import 'dart:mirrors';
class Dodo {
void hello() {
print("hello dodo");
}
}
void main() {
var dodo = reflectClass(Dodo);
var b = dodo.newInstance(new Symbol(''), []).reflectee;
b.hello();
}
也许它可以写得更紧凑,尤其是new Symbol('')
的表达.