Sobes.tech
Junior — Middle

Kann eine Standardimplementierung einer Methode in einer Schnittstelle oder einem Protokoll festgelegt werden?

sobes.tech KI

Antwort von AI

In Swift können Protokolle Standardimplementierungen von Methoden durch Erweiterungen enthalten. Dies ermöglicht es, ein Standardverhalten für Protokollmethoden festzulegen, das in konkreten Typen überschrieben werden kann.

Beispiel:

protocol Greetable {
    func greet()
}

extension Greetable {
    func greet() {
        print("Standardgruß")
    }
}

struct Person: Greetable {}

let p = Person()
p.greet() // Gibt aus: Standardgruß

Auf diese Weise wird die Standardimplementierung nicht im Protokoll selbst, sondern in seiner Erweiterung festgelegt.