AS3.0中获取对象的类(比如碰撞检测时候检测出碰撞物是由什么AS链接创建的)
目录
一、目的
1、想:知道AS3.0中获取对象的类
2、想:当碰撞时候,知道碰撞物体是由什么AS连接动态创建的,这样就可以依照不同的类进行不同的处理
二、参考
1、AS3.0中获取对象的类
- 总结:很好,碰撞时候,能获得碰撞物体是由什么AS连接创建的
1、
- 总结:不错
三、操作:一
三、操作:二
Object有一个constructor的动态属性可以返回对象的类,例如:
package
{
import flash.display.Sprite;
public class Main extends Sprite
{
public function Main()
{
var a:Object= new Sprite();
trace(a.constructor);
//返回[class Sprite]
}
}
}
但是有几点要注意
Proxy类会在调用constructor属性时抛出异常:
Error: Error #2088: Proxy 类不实现 getProperty。它必须由一个子类覆盖。
at Error$/throwError()
at flash.utils::Proxy/http://www.adobe.com/2006/actionscript/flash/proxy::getProperty()
XML,XMLList在调用时返回空;int,uint调用constructor时会返回Number;Vector调用时会返回vector.<*>,例如
package
{
import flash.display.MovieClip;
import flash.display.Sprite;
public class Main extends Sprite
{
public function Main()
{
var a:Object= new Vector.<MovieClip>();
trace(a.constructor);
//返回 [class Vector.<*>]
}
}
}