AS3:如何在循环中从基类创建实例



我想从for循环中的基类创建一些实例。

我创建了一个MovieClip符号,并通过Export for ActionScript喜欢它。

我正试图从基类中创建一些实例。基类名称为Ball_Base

for (var counter:uint = 1; counter <= 10; i++) {
    var "ball_instance" + counter:Ball_Base = new Ball_Base();
}

它得到以下错误:

Syntax error: expecting identifier before "ball_instance".

请告诉我我在这里缺了什么。

您的代码不正确。

您的实例中必须有一个关于名称的属性,例如

public class Ball_Base {
    private var _name:String;
    public function get name():String
    {
        return _name;
    }
    public function set name(value:String):void
    {
        _name = value;
    }
}

当你在循环中时,你会这样做:

var myBall:Ball_Base = new Ball_Base();
myBall.name = "ball_instance" + counter;

最后,如果您需要将所有实例存储在内存中,请将它们添加到ArrayCollection 中

var myArray:ArrayCollection = new ArrayCollection();
for (var counter:uint = 1; counter <= 10; i++) {
    var myBall:Ball_Base = new Ball_Base();
    myBall.name = "ball_instance" + counter;
    myArray.addItem(myBall);
}

如果我理解以上内容,可能是:

for (var counter:uint = 1; counter <= 10; counter++) {
    var instanceOfClass:Ball_Base = new Ball_Base();
        instanceOfClass.someVar = "ball_instance" + counter; // Assign some name to existing var in class
    var varName:String = instanceOfClass.someVar; // save that name in var for further operation
}

最新更新