【问题标题】:How to access, change, and then return the changed value from another class as3如何从另一个类 as3 访问、更改然后返回更改后的值
【发布时间】:2014-05-12 20:26:46
【问题描述】:

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

【问题讨论】:

  • 欢迎来到 SO。请查看社区规则:stackoverflow.com/help。我们通常不喜欢“请将代码提供给...”类型的问题。相反,您会在向我们展示您的尝试以及您遇到的具体问题的详细问题上获得很好的反馈。

标签: actionscript-3 class var


【解决方案1】:

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

球.as:

public var ballspeedx:int = 10;

Main.as:

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

【讨论】:

    【解决方案2】:

    您可以将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; }
    

    【讨论】:

    • 我应该把 getter 和 setter 函数放在哪里?在主班还是球班?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-08-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多