Was bei Vererbungen zu beachten ist.

Nach einfachem Kontrollieren und Besprechen einiger Hausaufgaben der Stunde vom 21. Oktober 2019 haben wir gemeinsam im Plenum die Aufgabe 3 bearbeitet.

Es galt die richtige und einzig funktionierende Variante zum Anzeigen des Textes „Game Over“ zu finden und zu begründen wieso diese und nicht die andere funktioniert.

FrogWorld w = getWorld();
w.showText("Game Over", 4, 3);
World w = getWorld();
w.showText("Game Over", 4, 3);

Die zweite Variante ist die richtige, während die erste Variante sich nicht kompilieren lässt. Das Welt-Objekt, das beim Spiel erzeugt wird, ist ein Objekt der Klasse „FrogWorld“. Dennoch können wir es uns nicht als Objekt der Klasse FrogWorld (direkt) abspeichern, da die Methode getWorld ein Objekt der Klasse World zurück gibt und uns deshalb nur direkten Zugriff auf die World-Funktionalität gibt.

Wenn man den Datentyp eines Objektes genau definieren möchte, muss man einen Typecast durchführen:

FrogWorld w = (FrogWorld) getWorld();

Es gab keine Hausaufgaben.

Ein Kommentar zu „Was bei Vererbungen zu beachten ist.

Schreibe einen Kommentar