是否可以在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 api:
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('')
表达式。关于dart - 在Dart中将类类型作为变量传递,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23094392/