0

我在时间轴中有一个数组,需要将其传递给类文件,但我似乎无法弄清楚如何执行此操作,因为类间数组传输的方法似乎不起作用。

4

1 回答 1

3

您始终可以将数组作为方法参数传递或设置公共变量。
在我看来,最好的方法是使用 setter 方法:

class Foo {

    private var _bar:Array;

    public function set bar ( arr : Array ) : void {
        _bar = arr;
    }

    // it is customary to provide a getter method to retrieve the value later

    public function get bar ( ): Array ) {
        return _bar;
    }

    // more stuff happening here.
}

您可以从这样的框架动作中调用它:

var foo:Foo = new Foo();
foo.bar = [ 1,2,3 ];

您的问题中有一些术语怪癖,所以这是为了澄清一些事情:

类之于对象就像蓝图之于房子一样。设置属性值时,通常将它们设置在对象(类的实例)上,而不是在类本身上。这样,每个对象实例都可以有不同的值。一个类也可以有变量。这些被称为“静态”变量,它们对于类的所有实例都是相同的。假设_bar已声明private static var _bar:如果您随后创建var foo2:Foo = new Foo();foo2.bar将自动返回与 相同的值foo.bar,并且如果您更改 的值foo2.bar,您也将更改 的值foo.bar

于 2011-03-16T06:48:54.773 回答