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.