Instanzen dynamisch erzeugen

Status
Nicht offen für weitere Antworten.
J

JavaPoldi

Gast
Hi,

ich habe eine Klasse "Spiel" und möchte von dort aus dynamisch Instanzen der Klasse "Spieler" erzeugen. Also abhängig davon, wieviele Spieler mitspielen.
Erst habe ich dies mit einer HashMap gelöst um mit dem Schlüssel auf die Instanz zugreifen zu können, aber es muss doch auch möglich sein, diese Instanzen dynamisch zu erzeugen und trotzdem anschließend mit spieler1, spieler2 usw. drauf zugreifen zu können.

Ich wäre euch super dankbar, wenn mir jemand weiterhelfen könnte...

Viele Grüße... Poldi
 
R

Roar

Gast
warum keine List?

Code:
class Spiel {

private List<Spieler> spieler;

...

spieler.add(new Spieler("Ballack"));
spieler.add(new Spieler("Podolski :D"));

...

for(Spieler s: spieler.iterator()) {
s.machTor();
}

... oder

spieler.get(1).machTor(); // anstatt spieler1.machTor();

oder so...
 
J

JavaPoldi

Gast
Hi, danke!

hast recht, das sieht schonmal viel einfacher aus, als meine HashMap :wink:
 

SnooP

Top Contributor
Meistens sollte man in solchen Fällen andersrum denken - die Spielerobjekte sollten selbsterklärend sein, alle Informationen des Spielers sind dort drin, d.h. es sollte schlichtweg unnötig sein von außen zu sagen, welcher der vorhandenen Objekte tatsächlich Spieler1 oder 3 ist, das kann man ja anhand der Attribute der jeweiligen Objekte ermitteln...

eine Hashmap find ich irgendwie bei dem Szenario nicht so geeignet - eine Liste, wie ArrayList bei der Verwendung von Threads und nebenläufig spielenden Spielern evtl. auch eine synchronisierte Variante einer Collection ist als Datenspeicher da geeigneter.

Zum Durchwandern der einzelnen Spielerobjekte eignen sich die Iterator-Objekte, die man aus den Listen erzeugen kann.

Alternativ bei einer festen und eher kleinen Anzahl von Spielern, eignen sich auch Arrays als Speicher.. da kann man das durchwandern einfacher noch mit while oder for schleifen erledigen - der zugriff auf einzelne dynamisch erzeugte Objekte geht dann auch sehr simpel über die Indizes des Arrays...
Auch dort empfiehlt es sich dann eine add bzw. remove Methode zu machen, um Spielerobjekte zu erstellen und dem Array hinzuzufügen bzw. wieder zu entfernen.
 
J

JavaPoldi

Gast
Ja cool, wieder was gelernt!
So funzt es...

Vielen Dank nochmal...
...auch für die ausführliche Beantwortung von SnooP!
 

mic_checker

Top Contributor
allerdings hört es sich bei dir so an, als ob du beim Umgang mit Threads etc. zu einer ArrayList greifen solltest, dabei sind die Methoden unsynchronisiert.
In solchen Fällen ist dann Vector noch ganz brauchbar.
 

SnooP

Top Contributor
In welchen Fällen ist Vector brauchbar? ;) ... ich würde Vector wegen der Synchronisierung gar nicht mehr nutzen - lieber nen Wrapper für die Liste schreiben, der Zugriffsmethoden wie add und remove synchronized oder aber die synchronizedLists-Methode von Collections nutzen...
 

mic_checker

Top Contributor
nur da er wohl noch kaum erfahrung mit listen hat, sollte das für ihn wohl eher ein größeres problem darstellen :)

Aber das kann er ja selber entscheiden, nicht das wir nachher vom Thema abweichen *g*
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
M Dynamisch Instanzen erstellen. Java Basics - Anfänger-Themen 4
J Klassen Instanzen einer Klasse in einer anderen unabhängigen Klasse nutzen Java Basics - Anfänger-Themen 4
G zwei Instanzen einer Klasse Java Basics - Anfänger-Themen 29
C Was machen mit nicht mehr verwendeten Instanzen ? Java Basics - Anfänger-Themen 18
C Instanzen, wann muss ich Instanzen erzeugen & wo?) Java Basics - Anfänger-Themen 23
A Klassen Zugriff auf Instanzen Java Basics - Anfänger-Themen 2
F Mehrere Instanzen der Klasse A EINER Instanz der Klasse B übergeben Java Basics - Anfänger-Themen 3
M Alle Instanzen einer Klasse ansprechen Java Basics - Anfänger-Themen 4
H Erste Schritte JTree: Instanzen einer Klasse speichern oder Namen/Strings... Java Basics - Anfänger-Themen 4
B OOP Summe aus verschiedenen Instanzen einer Klasse berechnen Java Basics - Anfänger-Themen 2
Z Was habe ich davon mit einem Datentyp verschiedene Instanzen zu haben? Java Basics - Anfänger-Themen 6
Q OOP Mehrere Instanzen auf ein Feld Java Basics - Anfänger-Themen 13
G Instanzen eines Interfaces erzeugen Java Basics - Anfänger-Themen 7
S Direkt Instanzen anlegen Java Basics - Anfänger-Themen 1
K Variablen Instanzen gleich aber warum ? Java Basics - Anfänger-Themen 3
D Instanzen durch Methode Java Basics - Anfänger-Themen 14
W Zugriff auf Instanzen von Klassen Java Basics - Anfänger-Themen 8
S aus Text Datei Instanzen erzeugen, so richtig? Java Basics - Anfänger-Themen 4
O Liste aller Instanzen einer Klasse Java Basics - Anfänger-Themen 18
H Klassen Instanzen mit anderen Klassen erzeugen Java Basics - Anfänger-Themen 5
C Referenzen zu Instanzen einer Klasse im Array Java Basics - Anfänger-Themen 8
B Enum: Instanzen Java Basics - Anfänger-Themen 10
M Instanzen vergleichen? Java Basics - Anfänger-Themen 12
H Klassen, Konstruktoren, Instanzen etc Java Basics - Anfänger-Themen 6
W Instanzen, Klassen Java Basics - Anfänger-Themen 2
C Vectorarrays und Instanzen Java Basics - Anfänger-Themen 10
S alle instanzen einer klasse löschen Java Basics - Anfänger-Themen 18
C OOP Instanzen ansprechen Java Basics - Anfänger-Themen 3
P Verständnisfrage zu Instanzen/Objekten Java Basics - Anfänger-Themen 9
B Zugriff auf Variablen in nicht bekannten Instanzen Java Basics - Anfänger-Themen 6
R mit klassen-instanzen arbeiten in packages Java Basics - Anfänger-Themen 10
M Instanzen, Referenzen und Collections Java Basics - Anfänger-Themen 3
A Mehrere Instanzen einer eigenen Klasse in einem Array Java Basics - Anfänger-Themen 5
W mehrere (numerierte) Instanzen erzeugen Java Basics - Anfänger-Themen 3
N Instanzen von beliebigen Klassen aus dem Filesystem erzeugen Java Basics - Anfänger-Themen 7
M Problem mit Instanzen von JLabel Java Basics - Anfänger-Themen 4
E Vermeiden,dass mehrere Instanzen eines Java-Programms laufen Java Basics - Anfänger-Themen 2
V mehrere Instanzen gleicher Name möglich? Java Basics - Anfänger-Themen 3
E instanzen von Klassen erzeugen Java Basics - Anfänger-Themen 2
H Instanzen erzeugen und Methoden aufrufen Java Basics - Anfänger-Themen 5
L verschiedene JPanel-Instanzen erstellen Java Basics - Anfänger-Themen 8
K Eindeutige Instanzen von einem Objekt Java Basics - Anfänger-Themen 13
T Wo Daten ablegen für mehrere Servlet-Instanzen? Java Basics - Anfänger-Themen 2
G Instanzen in einem Feld erzeugen Java Basics - Anfänger-Themen 9
T Instanzen von abstrakten Klassen? Java Basics - Anfänger-Themen 14
D Instanzen einer Klasse Java Basics - Anfänger-Themen 6
G Speicherung von Referenzen auf Instanzen Java Basics - Anfänger-Themen 5
G alle Instanzen einer Klasse serialisieren Java Basics - Anfänger-Themen 4
Silver-Blue mehrere Instanzen einer Klasse, trotz Random immer das Selbe Java Basics - Anfänger-Themen 7
W Instanzen herunterzählen Java Basics - Anfänger-Themen 7
G Instanzen und Referenzen Java Basics - Anfänger-Themen 5
S Instanzen Java Basics - Anfänger-Themen 4
G wenn auch schon oft gefragt (Konstruktor , Instanzen , usw) Java Basics - Anfänger-Themen 6
districon Dynamisch Programmierung/Backtracking/Memoization Java Basics - Anfänger-Themen 3
T Klassen Denkfehler im Klassen "dynamisch" instanzieren? Java Basics - Anfänger-Themen 4
J Verundung dynamisch gestalten Java Basics - Anfänger-Themen 21
B Folgende Abfrage dynamisch programmieren? Java Basics - Anfänger-Themen 8
R Datenbank-Werte dynamisch ausgeben Java Basics - Anfänger-Themen 19
D new arraylist (List) dynamisch erstellen Java Basics - Anfänger-Themen 1
B Klassen Klasse dynamisch laden. Java Basics - Anfänger-Themen 8
N Dynamisch erzeugtes Label wird nicht angezeigt, TextField schon Java Basics - Anfänger-Themen 1
D Koordinatensystem dynamisch anpassen Java Basics - Anfänger-Themen 17
J Tableview, ObservableList ein bisschen dynamisch Java Basics - Anfänger-Themen 6
C Array - Länge dynamisch übergeben Java Basics - Anfänger-Themen 7
D Erste Schritte Dynamisch Objekte erzeugen und diese durchsuchen Java Basics - Anfänger-Themen 7
GreyFox Object dynamisch mit werten versehen. Java Basics - Anfänger-Themen 4
G Array dynamisch ausgeben Java Basics - Anfänger-Themen 3
S JTable dynamisch mit Datenbankinhalten füllen Java Basics - Anfänger-Themen 6
F Erste Schritte If Bedingung in Schleife dynamisch erweitern Java Basics - Anfänger-Themen 4
K JLabel zur Laufzeit dynamisch erzeugen Java Basics - Anfänger-Themen 7
V Text aus einer .txt dynamisch ins applet einpassen Java Basics - Anfänger-Themen 0
Y Eingabe-Formular mit JSP dynamisch machen - j/n/wie? Java Basics - Anfänger-Themen 2
N Dynamisch JTree erstellen Java Basics - Anfänger-Themen 3
R Objekte dynamisch erstellen? Java Basics - Anfänger-Themen 14
C Variablen Array dynamisch halten und ausrechnen Java Basics - Anfänger-Themen 14
N Ergebnisse dynamisch in Tabelle schreiben Java Basics - Anfänger-Themen 3
G JObjekte dynamisch vom Server erzeugen lassen Java Basics - Anfänger-Themen 4
I Dynamisch erzeugten Buttons Methoden zuweisen Java Basics - Anfänger-Themen 6
H Objekte dynamisch erzeugen? Java Basics - Anfänger-Themen 6
M Variablen dynamisch variableninhalt von Object auslesen Java Basics - Anfänger-Themen 4
S if-Block dynamisch aufbauen Java Basics - Anfänger-Themen 5
M Static Variable "dynamisch" aufrufen? Java Basics - Anfänger-Themen 8
B Klassen Objekte während der Laufzeit dynamisch anlegen Java Basics - Anfänger-Themen 8
A JButtons dynamisch generieren mit verschiedenen actionhandlern Java Basics - Anfänger-Themen 6
P Scrollpane mit dynamisch erzeugten Komponenten Java Basics - Anfänger-Themen 3
U JPanel dynamisch gestalten Java Basics - Anfänger-Themen 7
R Liste graphischer Objekte z.B. JButton dynamisch erstellen Java Basics - Anfänger-Themen 13
A Dynamisch die Anzahl der Threads in der Cyclic Barrier ändern Java Basics - Anfänger-Themen 2
K Datentypen Full qualified Name dynamisch gestalten Java Basics - Anfänger-Themen 7
M For-Schleifen dynamisch generieren? Java Basics - Anfänger-Themen 10
sqsh statische jlabels dynamisch verwalten Java Basics - Anfänger-Themen 2
O Wie kann man das einfach lösen? (dynamisch viele Attribute) Java Basics - Anfänger-Themen 6
L Tray-Einträge und dazu passende ActionListener dynamisch erzeugen? Java Basics - Anfänger-Themen 2
D JPanel dynamisch anpassen Java Basics - Anfänger-Themen 5
S Dialog dynamisch vergrößern Java Basics - Anfänger-Themen 2
S Dynamisch Zeit auslesen Java Basics - Anfänger-Themen 11
M JTextPane dynamisch erzeugen Java Basics - Anfänger-Themen 2
J Aufgaben Dynamisch auf Pool von Threads verteilen. Java Basics - Anfänger-Themen 3
D ArrayList dynamisch befüllen Java Basics - Anfänger-Themen 14
G Objekteigenschaften dynamisch erzeugen Java Basics - Anfänger-Themen 7

Ähnliche Java Themen

Neue Themen


Oben