在ActionScript3中,可以使用getQualifiedClassName函数 (flash.utils.getQualifiedClassName )获取实例的类名:
var sprite:Sprite = new Sprite();
trace(getQualifiedClassName(sprite));
// 输出"flash.display::Sprite"
还可以使用getQualifiedSuperclassName函数 (flash.utils.getQualifiedSuperclassName )获取超类的名称:
trace(getQualifiedSuperclassName(sprite));
// 输出"flash.display::DisplayObjectContainer"
如果想把字符串转换成类引用,可以使用getDefinitionByName函数 (flash.utils.getDefinitionByName ):
trace(getDefinitionByName("flash.display::Sprite"));
// 输出[class Sprite]
而使用describeType函数 (flash.utils.describeType ) 则可以获取非常详细的类的信息:
var s : String = " hello " ; trace ( describeType ( s )) ;
输出:
<type name="String" base="Object" isDynamic="false" isFinal="true" isStatic="false">
<extendsClass type="Object"/>
<constructor>
<parameter index="1" type="*" optional="true"/>
</constructor>
<accessor name="length" access="readonly" type="int" declaredBy="String"/>
</type>
(http://www.zengrong.net/?p=364)