我正在尝试将一个对象添加到向量中,当我使用下面的代码粘贴时,我得到的错误是“令牌上的语法错误,错位的构造(s)”。和“令牌上的语法错误”gamePaddle“,在此令牌之后预期的VariableDecloratorID。”我到处寻找,找不到我做错了什么,他们都告诉我像这样构建Vector。错误发生在启动ListOfGameObjects.add(...
的行上class GameWorld {
/**
* Code that instantiate, hold, and manipulate GameOobjects and related game state data.
* @author Tyler Thomas
*
*/
Paddle gamePaddle = new Paddle();
Ball gameBall = new Ball();
Edge topEdge = new Edge(50, 150);
Edge bottomEdge = new Edge(50, 0);
Edge leftEdge = new Edge(0, 75);
Edge rightEdge = new Edge(100, 75);
Vector<GameObject> ListOfGameObjects = new Vector<GameObject>();
ListOfGameObjects.add(gamePaddle);
}
答案 0 :(得分:5)
任何非实例化代码(如ListOfGameObjects.add(gamePaddle);
)都需要位于方法内。
对于像这样的简单示例,请将所有代码放在public static void main
答案 1 :(得分:5)
您正在尝试在类声明中添加语句。
您需要将其放入代码块中,例如在构造函数中:
class Gameworld {
....
public GameWorld() {
ListOfGameObjects.add(gamePaddle);
}
}
如果你这样做,当构造GameWorld对象时,padde将被添加到ListOfGameObjects。
P.S。您还应该将其重命名为“listOfGameObjects”。初始大写字母通常保留给类名。这是一个有用的约定,可以使您的代码更易于阅读/理解。
P.P.S。您还应该考虑用ArrayList替换Vector。 Vector is considered a bit outdated nowadays