Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
faecher:informatik:oberstufe:glossar:polymorphie:start [07.04.2022 09:15] – angelegt Matthias Waffenschmidt | faecher:informatik:oberstufe:glossar:polymorphie:start [Unbekanntes Datum] (aktuell) – gelöscht - Externe Bearbeitung (Unbekanntes Datum) 127.0.0.1 | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | ====== Polymorphie ====== | ||
- | |||
- | Der Ausdruck polymorph stammt aus dem Griechischen und bedeutet so viel wie // | ||
- | |||
- | Wird in Java im Quellcode der [[..: | ||
- | |||
- | Zur Laufzeit kann die Variable aber auch auf ein Objekt einer Subklasse verweisen. Der Typ dieses Objekts nennt man den **dynamischen Typ**. | ||
- | |||
- | Beim Compilieren des Java-Codes ist stets der statische Typ entscheidend, | ||
- | |||
- | Der Unterschied dieser beiden Typen zeigt sich bei dem folgenden Methodenaufruf: | ||
- | |||
- | <code java> | ||
- | beispiel.anzeigen(); | ||
- | </ | ||
- | |||
- | - auf die Variable // | ||
- | - das in der Variable gespeicherte Objekt und seine Klasse wird gefunden. | ||
- | - besitzt diese Klasse die Methode // | ||
- | - wird in der Superklasse nach der Methode // | ||
- | - gibt es dort auch keine passende Methode, so wird die komplette Vererbungshierarchie nach oben verfolgt und die erste gefundene Methode verwendet. | ||