Junior — Middle
Bir arayüzde veya protokolde varsayılan bir yöntem uygulaması tanımlanabilir mi?
sobes.tech yapay zeka
AI'dan gelen yanıt
Swift'te protokoller, genişletmeler (extensions) aracılığıyla varsayılan yöntem uygulamaları içerebilir. Bu, protokol yöntemleri için varsayılan bir davranış belirlemeye olanak tanır ve bu davranış, belirli türlerde geçersiz kılınabilir.
Örnek:
protocol Greetable {
func greet()
}
extension Greetable {
func greet() {
print("Varsayılan selam")
}
}
struct Person: Greetable {}
let p = Person()
p.greet() // Çıktı: Varsayılan selam
Bu şekilde, varsayılan uygulama protokolün kendisinde değil, onun genişletmesinde tanımlanır.