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 = new Hund("Bello"); t.stellDichVor();
Die Variable t kann sowohl auf ein Hund-Objekt zeigen als auch auf ein Katze-Objekt. Diesen Sachverhalt nennt man Polymorphismus. Das Wort kommt aus dem Griechischen und bedeutet "Vielgestaltigkeit".