【发布时间】:2013-10-27 17:19:54
【问题描述】:
我正在尝试将新创建的对象添加到类的构造函数中的 ArrayList。新对象正在 main 方法的另一个类中创建。
主要方法:
public static void main(String[] args) {
// TODO code application logic here
Player p1 = new Player("Peter");
}
我的播放器类:
public class Player {
protected static int age;
protected static String name;
protected static ArrayList players = new ArrayList();
Player(String aName) {
name = aName;
age = 15;
players.add(new Player()); // i know this doesn't work but trying along these lines
}
}
【问题讨论】:
-
name和age不应是静态的。 -
你可以试试
players.add(this),它指的是你当前的实例,但我的建议是修改你的结构,因为我认为玩家不应该有责任记住到目前为止已经创建了哪些玩家.此功能应委托给专用实体 -
可能有正当理由在 Player 中保留所有玩家的列表。我不是说我会这样做,但你可以像这样制作一个完美可行的程序
-
我同意,总是有可能的。我不知道他的具体想法是什么,但是按照他的例子和静态变量的使用,我得出了上述结论
-
它几乎看起来像一个使用
ArrayList而不是Player previous;Player next的链表实现我敢打赌会有一个方法next和previous。否则,我同意@Grove 的观点,即应该将其委托给其他地方
标签: java class object arraylist