【问题标题】:in Dart, how do you use `class` when stored in a variable?在 Dart 中,当存储在变量中时如何使用 `class`?
【发布时间】:2013-11-22 07:06:36
【问题描述】:

Dart 中,您可以将class 分配给变量,例如,

var klass = 字符串;

但是一旦分配了,你是怎么使用的呢?

var str = 新的类(); ===> 错误:使用了格式错误的类型

一旦一个变量中有一个class,如何使用它来instantiate 一个新的object class

【问题讨论】:

    标签: class dart instantiation


    【解决方案1】:

    你必须使用dart:mirrors

    import 'dart:mirrors';
    
    class A {
      A();
      A.named(String value);
    }
    
    main() {
      final t = A;
    
      // same as 'new A()'
      final a1 = reflectClass(t).newInstance(const Symbol(''), []).reflectee;
    
      // same as 'new A.named('test')'
      final a2 = reflectClass(t).newInstance(#named, ['test']).reflectee;
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-11-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-23
      • 2021-07-20
      • 2021-02-11
      • 1970-01-01
      相关资源
      最近更新 更多