man vergleich lang verklungene Worte
[quote=SlaterB]aktuell wäre ein vermeintlich simpler aber dann doch günstiger Anfang, auf beliebige Weise einfach nur 12 Tische zu erzeugen,
sie ordentlich irgendwo ablegen (falls nicht EINE Enum, dann durchaus irgendwo EINE Liste)
[…]
danach für den Rest aller Zeiten darauf aufpassen, das keine neunmalkluge Stuhl-Klasse oder sonstiger Code auf einmal noch neue Tische erzeugt[/quote]
mit aktuell
for(int n=0;n<24;n++) {
stuehle.add(new Stuhl(null));
} // 24 Stühle fertig
[..]
tische.get(0).addStuhl(new Stuhl(null)); // noch mehr Stühle??
gegen die zwölf Aufrufe ist in der Tat nix zu machen, außer sie direkt bei 12 Tisch-Konstruktoren oder Enum-Aufrufen zu schreiben,
aber fast dasselbe,
oder die benötigte Information in einer Liste/ Array abzulegen, im manchen Fällen gar berechnen zu lassen, aber dafür hier zu wenig
verwende doch 12 Aufrufe a la
add(0, 2, 3, 4, -1) // erster Parameter Tisch 0, Rest bis zu 4 Stühle Varargs oder wenn ein Parameter >= 0
→
allgemeine Methode add(int,int,int,int,int),
die macht daraus
add(0, 2)
add(0, 3)
add(0, 4)
// nix für -1
und noch eine allgemeine Methode add(int,int),
die Tisch 0 aus der Liste holt sowie Tisch 2 und bei beiden Objekten add-Methoden aufruft
ein Stuhl kann auch mehreren Tischen zugeordnet sein, oder?
[edit: die verschiedensten Vorschläge schon wieder im Minutentakt, wobei alles auch schon früher genannt wechselseitig, such dir was aus ]