我正在尝试创建一个对象的多个实例并将其存储在数组中。但是,它的最后一个实例将覆盖先前的实例。是我创建每个对象的一种方法吗?
我尝试创建一个数组并分别填充每个单独的对象。我也尝试过创建它的新实例。
class Card {
private static String name;
public Card(String name) {
this.name = name;
}
public String getName() {
return name;
}
}
public class Main {
static Card[] deck = new Card[5];
public static void main(String args[]) {
deck[0] = new Card("Ace");
deck[1] = new Card("Club");
System.out.println(deck[0].getName());
System.out.println(deck[1].getName());
}
}
deck [0]的输出应为“ Ace”,而deck [1]的输出应为“ Club”。 输出的是“俱乐部”两次。我该如何解决?
答案 0 :(得分:2)
您的类name
中的字段Card
被声明为static
。删除static
关键字:
class Card {
private String name;
// ...
}
如果某物是static
,则只能是一个。