Junior — Middle
Kan een standaardimplementatie van een methode worden gedefinieerd in een interface of protocol?
sobes.tech AI
Antwoord van AI
In Swift kunnen protocollen standaardimplementaties van methoden bevatten via extensies. Dit stelt je in staat om een standaardgedrag voor protocolmethoden te definiëren, dat in specifieke typen kan worden overschreven.
Voorbeeld:
protocol Greetable {
func greet()
}
extension Greetable {
func greet() {
print("Standaard begroeting")
}
}
struct Person: Greetable {}
let p = Person()
p.greet() // Toont: Standaard begroeting
Zo wordt de standaardimplementatie niet in het protocol zelf gezet, maar in de extensie ervan.