Autor: Chris Hübsch
© 1996,1997
Es sind die von mir neu erstellten Klassen und deren direkte Superklasse aufgeführt.
java.awt.Frame | +---- TetrisApplication java.awt.Applet | +---- TetrisTest java.awt.Canvas | +---- PreviewCanva | +---- TetrisCanvas java.at.Panel | +---- TetrisControls java.lang.Thread | +---- TetrisThread java.lang.Exception | +---- SteinchenKannNichtWeiterException java.lang.Object | +---- TetrisFarbe | +---- TetrisFeld | +---- TetrisSteinchen | +---- TetrisStein | +---- EinfachStein | | | +---- QuadratStein | | | +---- PlusStein | +---- ZweifachStein | | | +---- UglyStein | | | +---- RechteckStein | | | +---- Rechteck5Stein | | | +---- SStein | | | +---- S5Stein | | | +---- ZStein | | | +---- Z5Stein | +---- VierfachStein | +---- UStein | +---- TStein | +---- T5Stein | +---- LStein | +---- L5Stein | +---- GStein | +---- G5Stein | +---- F5LinksStein | +---- F5RechtsStein | +---- Quadrat5LinksStein | +---- Quadrat5RechtsStein | +---- JanLinksStein | +---- JanRechtsStein | +---- LarsLinksStein | +---- LarsRechtsStein
Es sind nur die zum Verständnis der Semantik nötigen Objekte aufgeführt. Zwischenspeicher (z.B. zur Beschleunigung der Ausführung) und einfache Datentypen sind nicht angegeben. Das wird in den Klassenbeschreibungen gemacht.
Schreibweise: (Typ)Instanzname[*|**]
*: eindimensionales Feld
**: zweidimensionales Feld
(TetrisApplication)unbenannt | +---- (TetrisTest)unbenannt | +----(TetrisControls)theControls | +----(PreviewCanvas)thePreview | +----(TetrisCanvas)theCanvas | +----(TetrisStein 1)aktuellerStein,nextStein | | | +----(TetrisSteinchen)steinchen*, drehungen** | +----(TetrisThread)runner | +----(TetrisFeld)spielFeld | +----(TetrisSteinchen)elemente**
1Ist abstrakte Superklasse aller Steine, dadurch ist eine Ausnutzung der Polymorphie möglich.