Wenn man im Konstruktor der Klasse 3DBoard die Member-Variablen so initialisiert, dass das zweidimensionale tiles der ersten Ebene des dreidimensionalen 3dTiles entspricht:
Code: Alles auswählen
this.3dTiles[0] = this.tiles
Das einzige LSP-Problem, was wir mit diesem "Trick" noch gefunden haben, ist auch nur existent, wenn tiles eine public-Member-Variable wäre: Dann könnte sie von außen gesetzt werden und somit wäre dann
Code: Alles auswählen
board.tiles != board.3dTiles[0]
Haben wir etwas übersehen, sind wir irgendwie auf dem Holzweg?