求助:as3当中 this关键字的用法总是搞不懂
看了帮助文档,又看了书,但总是不太明白,请大家通俗地讲解下,谢谢!例如下面这个例子package{importflash.display.Sprite;importfla...
看了帮助文档,又看了书,但总是不太明白,请大家通俗地讲解下,谢谢!
例如下面这个例子
package {
import flash.display.Sprite;
import flash.events.Event;
public class Car extends Sprite {
private var _speed:Number;//速度
private var _direction:Number;//方向的角度
public function Car( ) {
_speed = Math.random() * 5;
_direction = 0;
init();
}
private function init():void {
this.addEventListener(Event.ENTER_FRAME, onENTER_FRAME);
}
private function onENTER_FRAME(event:Event):void {
move();
}
private function move():void {
this.x += Math.cos(_direction) * _speed;
this.y += Math.sin(_direction) * _speed;
}
public function crash():void {
trace("Boom!");
}
}
}
请问this.addEventListener(Event.ENTER_FRAME, onENTER_FRAME);这句里面的this指代的是?
this.x += Math.cos(_direction) * _speed;this.y += Math.sin(_direction) * _speed;这两个this指的是?
怎么判断this指代的是谁,为什么不直接使用那个主体?什么时候一定要使用this? 展开
例如下面这个例子
package {
import flash.display.Sprite;
import flash.events.Event;
public class Car extends Sprite {
private var _speed:Number;//速度
private var _direction:Number;//方向的角度
public function Car( ) {
_speed = Math.random() * 5;
_direction = 0;
init();
}
private function init():void {
this.addEventListener(Event.ENTER_FRAME, onENTER_FRAME);
}
private function onENTER_FRAME(event:Event):void {
move();
}
private function move():void {
this.x += Math.cos(_direction) * _speed;
this.y += Math.sin(_direction) * _speed;
}
public function crash():void {
trace("Boom!");
}
}
}
请问this.addEventListener(Event.ENTER_FRAME, onENTER_FRAME);这句里面的this指代的是?
this.x += Math.cos(_direction) * _speed;this.y += Math.sin(_direction) * _speed;这两个this指的是?
怎么判断this指代的是谁,为什么不直接使用那个主体?什么时候一定要使用this? 展开
2个回答
2013-05-02
展开全部
这里this都是指Car
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询