getField 抽象方法
- Symbol fieldName
调用获取器并返回结果上的镜像。
获取器可以是字段或用户自定义获取器方法的隐式获取器。
令 o 为此镜像反射的对象,令 f 为由 fieldName
表示的获取器的简单名称。
则此方法将在可以访问 o 的私有成员(如果 o 是一个类或库)或 o 类的私有成员的范围内执行获取器调用(否则)。
如果此镜像是一个 InstanceMirror,且 fieldName
表示其受托对象的实例方法,则调用的结果是与此方法对应的闭包的实例镜像。
如果此镜像是一个 LibraryMirror,且 fieldName
表示相应库中的顶层方法,则调用的结果是与此方法对应的闭包的实例镜像。
如果此镜像是一个 ClassMirror,且 fieldName
表示相应类中的静态方法,则调用的结果是与此方法对应的闭包的实例镜像。
如果调用返回结果 r,则此方法返回调用 reflect(r) 的结果。
如果调用导致编译错误,则效果与遇到非反射编译错误相同。
如果调用抛出异常 e(它没有捕获),则此方法抛出 e。
实现
// TODO(ahe): Remove stuff about scope and private members. [fieldName] is a
// capability giving access to private members.
InstanceMirror getField(Symbol fieldName);