生成描述 ActionScript 对象(命名为方法的参数)的 XML 对象。此方法实现 ActionScript 语言的反射编程概念。
如果 value 参数是类型的实例,则返回的 XML 对象包括该类型的所有实例属性,但不包括任何静态属性。可以在解析 XML 对象时检查此条件,方法是检查 <type> 标签的 isStatic 属性的值,该值在 value 参数是类型的实例时为 false。
要获取某个类型的静态属性,请为 value 参数传递该类型本身。返回的 XML 对象不仅仅包括类型的静态属性,而且还包括它的所有实例属性。实例属性嵌套在名为 <factory> 的标签内,从而与静态属性区分开来。在这种情况下,<type> 标签的 isStatic 属性为 true。
注意:如果只需要遍历某个对象的继承层次结构,而不需要 describeType() 提供的其他信息,请改用 getQualifiedClassName() 和 getQualifiedSuperclassName() 函数。
下表描述了由 describeType() 生成的 XML 对象的某些标签和属性(返回的所有类和接口名称均采用完全限定的格式):
| 标签 | 属性 | 说明 | 
|---|---|---|
| <type> | XML 对象的根标签。 | |
| name | ActionScript 对象的数据类型的名称。 | |
| base | ActionScript 对象的定义类的直接超类。如果 ActionScript 对象是类对象,则值为 Class。 | |
| isDynamic | 如果 ActionScript 对象的定义类是动态的,则为 true;否则为false。如果 ActionScript 对象是类对象,则值为true,因为 Class 类是动态的。 | |
| isFinal | 如果 ActionScript 对象的定义类是最终类,则为 true;否则为false。 | |
| isStatic | 如果 ActionScript 对象是类对象或构造函数,则为 true;否则为false。此属性之所以名为isStatic,原因是:如果此属性为true,则未嵌套在factory标记内的任何标签都是静态的。 | |
| <extendsClass> | ActionScript 对象的定义类的每个超类都有一个单独的 extendsClass标签。 | |
| type | ActionScript 对象的定义类扩展的超类的名称。 | |
| <implementsInterface> | ActionScript 对象的定义类或其任何超类实现的每个接口都有一个单独的 implementsInterface标签。 | |
| type | ActionScript 对象的定义类实现的接口的名称。 | |
| <accessor> | 存取器是 getter 和 setter 函数定义的一个属性。 | |
| name | 存取器的名称。 | |
| access | 属性的访问权限。可能的值包括 readonly、writeonly和readwrite。 | |
| type | 属性的数据类型。 | |
| declaredBy | 包含关联的 getter 或 setter 函数的类。 | |
| <constant> | 常量是用 const语句定义的一个属性。 | |
| name | 常量的名称。 | |
| type | 常量的数据类型。 | |
| <method> | 方法是作为类定义的一部分声明的函数。 | |
| name | 方法的名称。 | |
| declaredBy | 包含方法定义的类。 | |
| returnType | 方法的返回值的数据类型。 | |
| <parameter> | 方法定义的每个参数都有一个单独的 parameter标签。此标签始终嵌套在<method>标签内。 | |
| index | 一个数字,对应于参数在方法的参数列表中出现的顺序。第一个参数的值为 1。 | |
| type | 参数的数据类型。 | |
| optional | 如果参数是可选参数,则为 true;否则为false。 | |
| <variable> | 变量是用 var语句定义的一个属性。 | |
| name | 变量的名称。 | |
| type | 变量的数据类型。 | |
| <factory> | 如果 ActionScript 对象是类对象或构造函数,则所有实例属性和方法均嵌套在此标签内。如果 <type>标签的isStatic属性为true,则未嵌套在<factory>标签内的所有属性和方法都是静态的。只有在 ActionScript 对象是类对象或构造函数时,此标签才会出现。 | 
- 参数:
- value 需要类型说明的对象。可以将任何 ActionScript 值传递给此方法,包括所有可用的 ActionScript 类型、对象实例、原始类型(如 uint)和类对象。
- 返回:
- 一个 XML 对象,包含有关作为参数传入的对象的详细信息。它提供有关对象的以下信息: 
- 对象的类
- 类的属性
- 从类到其基类的继承树
- 类实现的接口
- 类的已声明实例属性
- 类的已声明静态属性
- 类的实例方法
- 类的静态方法
- (对于类的每个方法)名称、参数的数量、返回类型和参数类型
 注意: describeType()只显示公共属性和方法,而不会显示私有、在包内部或在自定义命名空间中的属性和方法。
 
                    
                
 
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号