Sobes.tech
Junior

Open sınıfı final mi yoksa değil mi?

sobes.tech yapay zeka

AI'dan gelen yanıt

Final değil. open anahtar kelimesi, bu sınıftan kalıtım yapabileceğinizi ve üyelerini geçersiz kılabileceğinizi açıkça gösterir.

open class BaseClass {
    open func someMethod() {
        // Varsayılan uygulama
    }
}

class DerivedClass: BaseClass {
    override open func someMethod() {
        // Geçersiz kılınmış uygulama
    }
}

Diğer erişim belirteçleriyle karşılaştıralım:

Belirteç Kalıtım Üyelerin geçersiz kılınması
private Hayır (dosya/alan kapsamında) Hayır
fileprivate Hayır (dosya kapsamında) Hayır
internal Evet (modül kapsamında) Evet (modül kapsamında)
public Evet (modül kapsamında) Evet (modül kapsamında)
open Evet (her modülde) Evet (her modülde)
final Hayır Hayır

final ile işaretlenmiş bir sınıf veya üye, geçersiz kılınamaz veya kalıtılamaz, bu da onu final yapar. open ise tam tersidir.