Was versteht man unter einer polymorphen Variable beim objektorientierten Programmieren?

Antwort

In der objektorientierten Programmierung bezeichnet eine polymorphe Variable eine Variable, die Objekte verschiedener Klassen aufnehmen kann, solange diese Klassen eine gemeinsame Basisklasse oder ein gemeinsames Interface haben. Polymorphismus ermöglicht es, dass eine Methode oder eine Funktion unterschiedliche Implementierungen aufrufen kann, je nachdem, welches Objekt zur Laufzeit übergeben wird. Ein einfaches Beispiel in Java: ```java class Tier { void macheGeräusch() { System.out.println("Ein Geräusch"); } } class Hund extends Tier { void macheGeräusch() { System.out.println("Bellen"); } } class Katze extends Tier { void macheGeräusch() { System.out.println("Miauen"); } } public class Main { public static void main(String[] args) { Tier meinTier; meinTier = new Hund(); meinTier.macheGeräusch(); // Ausgabe: Bellen meinTier = new Katze(); meinTier.macheGeräusch(); // Ausgabe: Miauen } } ``` In diesem Beispiel ist `meinTier` eine polymorphe Variable, da sie sowohl ein `Hund`-Objekt als auch ein `Katze`-Objekt aufnehmen kann. Die Methode `macheGeräusch` wird je nach dem tatsächlichen Typ des Objekts, das `meinTier` referenziert, unterschiedlich ausgeführt.

Frage stellen und sofort Antwort erhalten