Junior — Middle
Se poate defini o implementare implicită a unei metode într-o interfață sau protocol?
sobes.tech AI
Răspuns de la AI
În Swift, protocoalele pot conține implementări implicite ale metodelor prin extensii. Acest lucru permite stabilirea unui comportament standard pentru metodele protocolului, care poate fi suprascris în tipuri specifice.
Exemplu:
protocol Greetable {
func greet()
}
extension Greetable {
func greet() {
print("Salut implicit")
}
}
struct Person: Greetable {}
let p = Person()
p.greet() // Va afișa: Salut implicit
Astfel, implementarea implicită nu este stabilită în protocolul în sine, ci în extensia sa.