私は3つの異なるクラスを持っていますが、すべて1つのクラスのインスタンスを使用する必要があります。その1つのクラスは、player1、player2などの複数のインスタンスを独自に作成することもできますし、staticは古い名前を上書きするため、静的に動作しません。異なるクラスのオブジェクトのJavaリフレッシュインスタンス
私は最後のクラスで "new"キーワードを使用すべきではないことを知っていますが、それ以外の方法はわかりません。
public class Test{
public static void main(String[] args){
Player player1 = new Player("bob");
Player player2 = new Player("Hank");
System.out.println("Original Name: " + player1.getName());
System.out.println("Original Name 2: " + player2.getName());
Display dis = new Display();
dis.disp();
System.out.println("Changed Name: " + player1.getName());
System.out.println("Changed Name 2: " + player2.getName());
}
}
class Player{
private String pName = "";
public Player(){}
public Player(String name){
pName = name;
}
public void setName(String inName){
pName = inName;
}
public String getName(){
return pName;
}
}
class Display{
public void disp(){
Player player1 = new Player(), player2 = new Player(); //Unneeded
System.out.println("Player name: " + player1.getName());
System.out.println("Player name 2: " + player2.getName());
player1.setName("Joe?");
player2.setName("Billy?");
System.out.println("Player new name: " + player1.getName());
System.out.println("Player new name 2: " + player2.getName());
}
}
あなたは正確に何をしようとしていますか? – Bhushan
プレイヤーの名前を変更して静的にしておきますが、静的を使用すると、player2はplayer1を上書きします.. – user1062898
このようなステートメント 'new player()、player2 = new Player();'で正確に何をしますか? – Lion