如何访问,更改,然后从另一个类as3返回更改的值

时间:2014-05-12 20:26:46

标签: actionscript-3 class var

我正在尝试创建一个类似于pong的游戏,我将代码放入我的影片剪辑的每个类而不是时间轴中。我的班级球中有一个可变的ballpeedx。 ballpeedx所做的是改变物体水平移动的速度。我试图从我的主类中调用该类中的变量,名为main。我不仅希望能够调用它,我希望能够更改它然后返回更改的值。有人可以解释如何做到这一点?

2 个答案:

答案 0 :(得分:1)

您可以ballspeedx成为ball班级的公共成员。

public var ballspeedx:Number;

或者,您可以为私有属性创建一个getter和setter:

private var _ballspeedx:Number;

public function get ballspeedx():Number { return _ballspeedx:Number; }
public function set ballspeedx($value:Number):void { _ballspeedx = $value; }

答案 1 :(得分:1)

使你的变量“ballspeedx”成为“ball”类中的公共变量。在主类中创建其对象时,可以访问其公共变量。你也可以改变它。您可以在“ball”类中添加getter和setter函数,以便在变量值为private时更改/访问它。

Ball.as:

public var ballspeedx:int = 10;

Main.as:

var ball:Ball = new Ball();
trace(ball.ballspeedx);
ball.ballspeedx = 20;
trace(ball.ballspeedx);