Sobes.tech
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.