如何获取有关飞镖课程的信息?

时间:2019-08-07 15:04:52

标签: class dart

我从Java到dart,两者之间有很多相似之处,但是我想做的一件事是获取有关dart中的类的一些信息,例如实例变量,方法和构造函数,但我做不到我不知道该怎么做,就像在Java类Class中一样,类Package和类Method是它们自身的简单表示,但是在dart中,我找不到类{{1} }女巫,它是一个空白类,运行Type返回type.runTime,因此被卡在这里,试图用谷歌搜索它,但我发现的只是dart的oop基础,简而言之,如何获得那些java的等价物Dart课程?并预先感谢。

1 个答案:

答案 0 :(得分:2)

您可以使用dart:mirrors软件包。 ClassMirror class可能会帮助您。

  TestClass test = new TestClass();
  var im = reflect(test);
  print(im.type.declarations.values);
  print(im.type.location);
  print(im.type.qualifiedName);
  print(test.runtimeType.toString());

我会为您提供所需的数据。

如果您尝试不初始化var im = reflect(TestClass);而不是已经初始化的对象。只是dart.core._Type,您只会得到

(MethodMirror on 'hashCode', MethodMirror on '_Type')
dart:core-patch/type_patch.dart:15
Symbol("dart.core._Type")