sealed Keyword’ü nedir?

Bir sınıfın miras vermesini ya da başka bir sınıf tarafından miras alınmasını engelleyen bir keyword’tür.

sealed class A 

{

}

A sınıfı kalıtımsal ilişkiye tabii tutulmaz!..

Sadece sınıflarda ve sadece ‘override’ edilmiş metotlarda kullanılabilir. 

class A 

{

    public virtual void X()

    {

        Console.WriteLine("Merhaba A");

    }

}

class B : A

{

    sealed public override void X()

    {

        Console.WriteLine("Merhaba B");

    }

}

class C : B

{

    public override void X()

    {

        Console.WriteLine("Merhaba C");

    }

}

A da virtula olan member ın B de override edilmesinde sıkıntı yok ama C de override edilmesini istemiyoruz. B den sonraki sınıflarda override edilmesini istemiyorum.

İstemiyorsak sealed keyword’ü ile işaretleriz.

  • Sınıfların davranışları kontrol edilmek istendiğinde 
  • Performans iyileştirmesi
  • Singleton Design Pattern ( bir sınıfın uygulama çapında tekil bir instance’ının olması amaçlanır)  

*Java da ki final keywordü*

İnternet sitesi https://abdullahsarihan.com
Yazı oluşturuldu 85

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Benzer yazılar

Aramak istediğinizi üstte yazmaya başlayın ve aramak için enter tuşuna basın. İptal için ESC tuşuna basın.