先看看网上比较好的关于域的讲解
http://www.flashas.net/asbc/20080505/3016.html.
下面我们要深究该域
为什么getDefinition("类名");就能得到一个类
实际上域就是一个管理资源的类
我们用另一种方法加载swf来管理资源文件文件
一个fla里面有多个资源文件 ,将其写成一个管理类,该类继承MovieClip 而不是Sprite 否则不能强制转化
对于上面的 myClass
我们则在函数中这样写
function get_myClass():MovieClip{
return new myClass();
}
当在主文件加载该swf 后
通过 var swf:MovieClip= MovieClip(e.target);
下面得到myClass
var myClass=swf.get_myClass()// 类比如 var MCClass:Class=appDomain.getDefinition("myClass") as Class;
一个是通过域实现,而另一个没有域
但是他们内部实现的机制是一样的!
所以我们在加载swf用两种加载的方法!