Sobes.tech
Junior

Was ist Polymorphismus in der Programmierung?

sobes.tech KI

Antwort von AI

Polymorphismus ist die Fähigkeit von Objekten verschiedener Klassen, auf dieselben Nachrichten (Methodenaufrufe) unterschiedlich zu reagieren.

Einfach gesagt, kann sich dieselbe Methode je nach Objekt, das sie aufruft, unterschiedlich verhalten. Dies wird durch Vererbung und Überschreiben von Methoden sowie durch die Verwendung von Schnittstellen erreicht.

Beispiel in Swift:

protocol Animal {
    func makeSound()
}

class Dog: Animal {
    func makeSound() {
        print("Wau")
    }
}

class Cat: Animal {
    func makeSound() {
        print("Miau")
    }
}

func playSound(animal: Animal) {
    animal.makeSound()
}

let dog = Dog()
let cat = Cat()

playSound(animal: dog) // Gibt aus: Wau
playSound(animal: cat) // Gibt aus: Miau

Hier akzeptiert die Funktion playSound ein Objekt vom Typ Animal, aber je nach konkreter Klasse (Dog oder Cat) wird die entsprechende Implementierung der Methode makeSound aufgerufen.