as3.0中把(loader:Loader=new Loader();)loader=null是什么意思?
1个回答
展开全部
loader=null 的意思是将此对象对应的内存区域清空。如果讲的详细一点就是说,在as3中,每个对象都是对应的内存地址的,比如那个loader:Loader这个对象,但是如果你单纯的只声明它,如var loader:Loader,计算机是不会为他开辟内存空间的,因为他现在只是一个符号没有任何意义。但是如果你声明之后有这句话loader=new Loader()就表示告诉计算机,让他给你这个对象分配内存空间,从此这个对象就真正的被实例化而且可以被使用了。这时你如果写loader=null;就表示你告诉计算机loader这个对象要和那块内存脱离关系了,即指向一个空区域null,然后根据flash内部的回收机制,就会将那个不用的垃圾内存回收了。不多这里需要注意一下,上述情况值适用与一个内存对应一个对象的情况,如果出现下面情况,你又申请了一个变量var loader2:Loader,并且让loader2=loader,那么这样的话就变成了两个变量同时控制一个内存区域,当你loader=null那块内存并未清空,因为loader2还持有引用,所以要注意这点
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询