在 ActionScript 3 中将对象放在对象中

Putting objects in objects in ActionScript 3

我创建了一个 class 个名为 questions 的对象,在每个问题中都有一个问题和几个答案。我想创建第二个 class 个名为 games 的对象,并在每个游戏中有几个问题。然后我想将几个游戏(有几个问题)本地存储在 sharedObject?

这是否被视为 "nesting" 另一个对象中的对象?

这是游戏的一些通用代码 class。它包含一系列问题。这基本上意味着它包含任意数量的问题对象,可以通过 addQuestion()getQuestion() 函数访问。

public class Game {

    private var questions:Array = [];

    public function Game() {

    }

    public function addQuestion(q:Question):void {
        questions.push(question);
    }

    public function getQuestion(i:uint):Question {
        return questions[i];
    }

}

同样,这里是 class 的问题。它包含一个提示和一系列答案。每个答案基本上只是一个字符串,因此没有真正需要答案 class。但是,如果您想扩展此实现,以便每个 Answer 还具有其他属性,例如时间戳,您可以为它创建一个 class。

public class Question {

    private var prompt:String;
    private var answers:Array = [];

    public function Question(prompt:String) {
        this.prompt = prompt;
    }

    public function getPrompt():String {
        return prompt;
    }

    public function addAnswer(answer:String):void {
        answers.push(answer);
    }

    public function getAnswer(i:uint):String {
        return answers[i];
    }

}

因此,要访问游戏中第一个问题的第二个答案,您可以编写“myGame.getQuestion(0).getAnswer(1)”。

希望这对您有所帮助。如果您还有其他问题,请告诉我。