Sobes.tech
Junior — Middle

Kann Mehrfachvererbung in der Swift-Sprache implementiert werden?

sobes.tech KI

Antwort von AI

In der Programmiersprache Swift wird Mehrfachvererbung von Klassen nicht unterstützt, das heißt, eine Klasse kann nur von einer Superklasse erben.

Swift unterstützt jedoch Protokolle, die es ermöglichen, Funktionalitäten ähnlich der Mehrfachvererbung durch die Implementierung mehrerer Protokolle zu realisieren.

Beispiel:

protocol Flyable {
    func fly()
}

protocol Swimmable {
    func swim()
}

class Animal {
    func eat() {
        print("Essen")
    }
}

class Duck: Animal, Flyable, Swimmable {
    func fly() {
        print("Fliegen")
    }
    
    func swim() {
        print("Schwimmen")
    }
}

let donald = Duck()
donald.eat()  // Essen
donald.fly()  // Fliegen
donald.swim() // Schwimmen

Auf diese Weise wird die Funktionalität durch Vererbung einer Klasse und die Implementierung mehrerer Protokolle erweitert.