Sobes.tech
Junior — Middle

Open Class'ın erişilebilirliğini belirleyen kural nedir, kamuya açık mı yoksa özel mi?

sobes.tech yapay zeka

AI'dan gelen yanıt

Swift'te open anahtar kelimesi, sınıflar ve üyeleri için en yüksek erişim seviyesini belirler. open olarak ilan edilen bir sınıf, sadece tanımlandığı modül içinde değil, diğer modüllerden de kullanılabilir ve kalıtılabilir. Bu, open sınıfın kamuya açık olduğu ve modül dışında genişletilip üzerine yazılabileceği anlamına gelir.

open sınıf için erişim kuralları:

  • Her modülden erişilebilir (kamu).
  • Modül dışında kalıtılabilir ve üzerine yazılabilir.

public ile karşılaştırıldığında, bu sınıfın modül dışında kullanılmasına izin verir, ancak kalıtım veya modül dışında üzerine yazılmasına izin vermez; open, genişletme için maksimum esneklik sağlar.

Örnek:

open class Vehicle {
    open func start() {
        print("Vehicle started")
    }
}

// Diğer modülde kalıtım ve üzerine yazma yapılabilir
class Car: Vehicle {
    override func start() {
        print("Car started")
    }
}