polymorphismus:start
Dies ist eine alte Version des Dokuments!
Polymorphismus
Wir beginnen mit einem einfachen Beispiel, in dem wir zu einer Oberklasse (Tier
) zwei Unterklassen (Katze
, Hund
) bilden:
Einer Variablen vom Typ Tier
können wir sowohl Hund
-Objekte als auch Katze
-Objekte zuordnen. In beiden Fällen können wir die Methode stellDichVor()
der Klasse Tier
aufrufen:
Tier t; t = new Katze("Snoopy"); t.stellDichVor(); t.schnurre(); // GEHT NICHT! t = new Hund("Bello"); t.stellDichVor(); t.belle(); // GEHT NICHT!
Obwohl die Variable t
zum Zeitpunkt des Aufrufes t.schnurre()
auf ein Katze
-Objekt zeigt, akzeptiert der Compiler diesen Aufruf nicht, denn die Deklaration Tier t
in der ersten Zeile sichert nur zu, dass t
auf ein Objekt der Klasse Tier
oder einer Unterklasse davon zeigt.
polymorphismus/start.1678378308.txt.gz · Zuletzt geändert: 2023/03/09 16:11 von Martin Pabst