- Static ve Final olarak tanımlanmış metot yapıları override edilemez.
- Override işlemini uyguladığımız metodun erişim belirleyicisinin seviyesini düşüremeyiz fakat yükseltebiliriz.
- Üst sınıftan miras alınan bir metodun dönüş tipi veya parametrelerini değiştiremeyiz.
- Üst sınıf içerisinde yer alan private metotlar override işlemine tabi tutulmaz.
- Constructor (Kurucu / Yapıcı) metotlar override edilemez.
- Üst sınıfımızda yer alan ve alt sınıfımızda yer alacak override işlemi uygulayacağımız metot isimleri aynı olmalıdır.
- Override edeceğimiz metodu belirlerken virtual ve override anahtar sözcüklerini kullanmamız gerekiyor.
Bilgi: Virtual olarak belirtilen metot yapıları kalıtım yolu ile aktarıldıkları sınıfların içerisinde override edilerek değiştirilebilirler. Eğer override işlemi uygulanmazsa üst sınıf içerisindeki yapısını koruyarak çalışmaya devam eder.
Kod kalabalığını arttırmamak ve konuyu daha anlaşılır bir şekilde anlatmak için; sınıfları karışıklığa yer vermeyecek şekilde isimlendirip, konumuzun dışında olan kod satırlarına/bloklarına yer vermemeye çalışacağım.
Kaynaklar : https://www.srdrylmz.com/c-virtual-metotlar/