Automatisch Objekte erzeugen mit verschiedenen Namen

B0hn3

Mitglied
Angenommen, ich möchte während das Programm läuft ein neues Objekt vom Typ Person erstellen. Dann rufe ich z.B. folgende Methode auf:
Code:
neuePersonErstellen("Sebastian");
die dazugehörige Methode sieht so aus:
Code:
void neuePersonErstellen(String name)
{
          Person abc = new Person (name);
}

die dazugehörige Klasse:
Code:
class Person {

     String name;
   
     Person(String name){
           this.name=name;
     }

}


Wenn ich das mehrmals mache, dann habe ich mehrere Objekte vom Typ Person, die alle abc heißen. Wie soll ich dann auf die verschiedenen Objekte zugreifen?
 
Du hast, nachdem die Methode neuePersonErstellen ausgeführt wurde, überhaupt kein Objekt mehr, auf das Du zugreifen könntest.

Mal abgesehen davon: wofür brauchst Du die Methode?
 
Die Frage zielte darauf ab, dass Du natürlich unmittelbar Person abc = new Person("Sebastian"); schreiben könntest.

Gehen wir aber mal von einem Spiel aus, d. h. einer Klasse, in der die Spieler gespeichert werden sollen. Dann machst Du es so, wie @jhjh geschrieben hat:

Java:
class Spiel {
    private List<Person> spieler = new ArrayList<>();

    public void neuerSpieler(String name) {
        spieler.add(new Person(name));
    }

    public int anzahlSpieler() {
        return spieler.size(); 
    }

    public Person getSpieler(int index) {
        return spieler.get(index);
    }
}
 

Neue Themen


Zurück
Oben