Junior — Middle
Swift dilinde çoklu sınıf veya protokol kalıtımına nasıl ulaşılır?
sobes.tech yapay zeka
AI'dan gelen yanıt
Swift'te bir sınıf yalnızca bir üst sınıftan kalıtım alabilir, yani çoklu sınıf kalıtımı desteklenmez. Ancak, benzer bir etki elde etmek için, bir sınıfın kalıtımı ve birkaç protokolün uygulanması kullanılır. Swift'te protokoller, bir sınıf, yapı veya enum'un uygulaması gereken gereksinimler (yöntemler, özellikler) kümesini tanımlar. Böylece, bir sınıf hem üst sınıfından davranış kalıtabilir hem de aynı anda birkaç protokolü karşılayabilir, bu da işlevselliğin kombinlenmesine olanak tanır.
Örnek:
protocol Drivable {
func drive()
}
protocol Flyable {
func fly()
}
class Vehicle {
func start() {
print("Araç başlatıldı")
}
}
class FlyingCar: Vehicle, Drivable, Flyable {
func drive() {
print("Yolda sürüş")
}
func fly() {
print("Gökyüzünde uçuş")
}
}
let myFlyingCar = FlyingCar()
myFlyingCar.start() // Araç başlatıldı
myFlyingCar.drive() // Yolda sürüş
myFlyingCar.fly() // Gökyüzünde uçuş
Bu şekilde, çoklu kalıtım, bir sınıfın kalıtımı ve birkaç protokolün uygulanmasıyla elde edilir.