C#'ta Geçersiz Kılma Değiştirici nedir?

C Ta Gecersiz Kilma Degistirici Nedir



Nesne yönelimli programlamayı içeren durumlarda, temel sınıf veya arabirimde zaten belirtilen bir yöntemin kendi uygulamamızı sunmamız gerekir. C# geçersiz kılma değiştiricisi bu durumda kullanışlıdır. Geçersiz kılma değiştiricisi, miras alınan bir yöntemin veya özelliğin davranışını değiştirmemize izin verir. Bu makale, C# dilinde geçersiz kılma değiştiricisinin kullanımını ve devralınan üyelerin davranışını değiştirmek için nasıl kullanılabileceğini tartışacaktır.

Geçersiz Kılma Değiştirici nedir?

C#'ta, geçersiz kılma değiştiricisini kullanarak, temel sınıfta veya arabirimde zaten bildirilen bir yöntemin veya özelliğin yeni bir uygulamasını oluşturabilirsiniz. Türetilmiş bir sınıfın miras alınan üyesinin davranışını değiştirmemizi sağlar. Bir yöntemi veya özelliği geçersiz kıldığımızda, o üye için temel sınıf veya arayüz tarafından sağlanan uygulamanın yerini alacak kendi uygulamamızı sağlayabiliriz.

Geçersiz Kılma Değiştirici Nasıl Kullanılır?

Geçersiz kılma değiştiricisini kullanmak için aşağıdaki adımları izlememiz gerekir:







  • Geçersiz kılmak istediğimiz yöntemi veya özelliği içeren temel sınıfı veya arabirimi devralın.
  • Türetilmiş sınıfta, aynı ada ve imzaya sahip yeni bir yöntem veya özellik bildirin.
  • Miras alınan üyeyi geçersiz kıldığımızı belirtmek için yöntem veya özellik bildiriminden önce geçersiz kılma anahtar sözcüğünü kullanın.

Bunu daha derinlemesine anlamanıza yardımcı olmak için işte bir örnek.



Adında 'Başlat' işlevi olan 'Araç' adlı bir temel sınıf düşünün. Start yöntemi, konsola aracın başladığını söyleyen bir mesaj yazdırır. Şimdi, Vehicle sınıfından miras alan ancak Start yöntemi için kendi uygulamasını sağlayan 'Car' adında yeni bir sınıf oluşturmak istediğimi varsayalım. Geçersiz kılma değiştiricisini kullanarak bunu şu şekilde başarabiliriz:



Sistemi kullanarak ;

sınıf Araç
{
halka açık sanal geçersiz Başlangıç ( )
{
Konsol. Yazı çizgisi ( 'Araç çalıştı.' ) ;
}
}

sınıf Araba : Araç
{
genel geçersiz kılma geçersiz Başlangıç ( )
{
Konsol. Yazı çizgisi ( 'Araba çalıştı.' ) ;
}
}

sınıf Programı
{
statik geçersiz Ana ( sicim [ ] argümanlar )
{
Araç araç = yeni Araç ( ) ;
araç. Başlangıç ( ) ; // Çıktı: Araç çalıştırıldı.

Araba araba = Yeni araba ( ) ;
araba. Başlangıç ( ) ; // Çıktı: Araba başladı.
}
}

Burada 'Araç' sınıfından miras kalan 'Araba' adında yeni bir sınıf oluşturdum. Ayrıca 'Araba' sınıfında 'Başlat' adında, 'Araç' sınıfındaki yöntemle aynı ad ve imzaya sahip yeni bir yöntem ilan ettim. Miras alınan yöntemi geçersiz kıldığımızı belirtmek için geçersiz kılma değiştiricisini kullandım.





Main'de, hem Vehicle hem de Car sınıflarının örneklerini oluşturdum ve bunlara Start yöntemini çağırdım. Araç nesnesi üzerinde Başlat yöntemini çağırdığımda konsola “Araç başlatıldı” yazdırıyor. Car nesnesi üzerinde Start metodunu çağırdığımda konsola “Car start” yazdırıyor. Bu, türetilen sınıfta Start yöntemini başarıyla geçersiz kıldığımızı gösterir:



Çözüm

C#'daki geçersiz kılma değiştiricisi, miras alınan bir üyenin davranışını değiştirmemize izin veren güçlü bir araçtır. Temel sınıf veya arabirimde zaten tanımlanmış olan bir yöntem veya özellik için kendi uygulamamızı sağlamak için kullanılır. Override değiştiricisinin C#'ta nasıl kullanılacağını tartıştık ve kullanımını basit bir örnekle gösterdik. Geçersiz kılma değiştiricisini kullanarak, bir temel sınıftan miras alan ancak kendi benzersiz davranışlarını sağlayan daha özel sınıflar oluşturabiliriz.