Derinlemesine yazılım eğitimleri için kanalımı takip edebilirsiniz...

C# Inheritance(Kalıtım,Miras)

Kalıtım mantığını ben Aristotales felsefesine benzetiyorum 🙂
Şimdi İnsan,Kızlar ve Erkekleri düşünelim.Burda hangisi Base Class,hangisi Derived Class olacaktır.
Şimdi düşünelim,
Erkekler ve Kızlar gruplarının ikiside sonuçta insan olduğu için, ikisinin de ortak özellikleri mevcuttur.Yani bir Erkeğin de Kızın da adı,soyadı,yaşı vs. gibi özellikler ortaktır.Ancak Erkeklerin ve Kızların kendine has,bir diğer grupta bulunmayan özellikleri vardır.Bunlar Erkekler de sakal,bıyık vs. olurken, Kızlar da makyaj yapmak,adamı hasta etmek gibi kendilerine has özellikleri vardır.Durum böyleyken ikisinde de ortak olan özellikler insan sınıfında bulunması gerekirken,kendilerine has özellikler kendi sınıflarında bulunmalıdır.Yani burda Base Class İnsan sınıfı olurken,Derived Class Erkek ve Kızlar olacaktır.Erkekler ve Kızlar ad,soyad vs. gibi insan için ortak olan özellikleri insan sınıfından kalıtımla alacaklardır.(Kendi sınıflarına da bu özellikleri tanımlayabiliriz ama kalıtımın amacı bu hiyerarşiyi kurmaktır.)Ve kendine has özelliklerini kendi sınıflarından alacaklardır.Bu mantıkta hiyerarşiyi uzatabiliriz.
Umarım kalıtımın mantığını anlatabilmişimdir.
Bir sonraki sayfa da C#’ta pratik olarak kalıtım konusuna gireceğiz.Artık zamanı geldi…

Bunlar da hoşunuza gidebilir...

22 Cevaplar

  1. Ahmet dedi ki:

    Harika bir anlatımın var..Çok işime yaradı,çok teşekkür ederim.

  2. Gencay dedi ki:

    Asıl ben teşekkür ederim…Faydasını gördüyseniz ne mutlu bana 🙂

  3. ensar bağış dedi ki:

    Videonu izledim youtubedan ve buraya geldim. Çok güzel bir anlatımın var. Hep başarılı ol inşaallah böyle:)

    • Gençay dedi ki:

      Merhaba Ensar,
      Güzel yorumun ve iltifatın için teşekkür ederim.
      Allah hepimizde başarıyı nasip etsin…
      Güzel insansın, beni çok mutlu ettin…Allah’ta seni mutlu etsin…

  4. Tuna dedi ki:

    Abi harikasın.Çok iyi anlatmışsın.Ellerine sağlık teşekkürler.

  5. emrecan dedi ki:

    cok güzell anlatım cok başarılı biligilerden dolayı tsekrler..

  6. emrecan dedi ki:

    COK HARİKAA

  7. şule dedi ki:

    Şaka yoluyla cinsiyetçilik yapmanıza kızdım.

    • Gençay dedi ki:

      Bu kadar duyar kasarsanız muhabbetleri nesneler dünyasına sınırlandırırsınız.
      Cinsiyetçilik maksatlı bir içerik oluşturmadığımı sizlerde biliyorsunuz.

      Sevgiler…

  8. Tuğbaaaa dedi ki:

    Hocam hiç açıklayıcı olmamış.Ayrıca da cinsiyetçilik yapmışsınız hiç yakıştıramadım. Kendinize iyi mi baksanız bilemedim. Uhuf diyorum yalnızca. Muhabbetlerinizin nesneler dünyasında sınırlı kalmaması dileğiyle.

  9. Talat dedi ki:

    Merhaba hocam, kucuk bir sorum olacak entityleri olustururken bir classtan baska bir class’a miras verirsek base class’ in propertylerini bir alt class’ta kullanabilirmiyiz?

  10. cihan dedi ki:

    Merhaba elinize sağlık. Benim de bir sorum olacak. Base classta 100bin kayıttan oluşan bir object List oluşrutmak istiyorum Ve classtan türeyen classların bu listeye ulaşmasını istiyorum. Ancak anladığım kadarıyla türeyen her class için bu liste kopyalanacak bunu nasıl engelleyebiliriz. Teşekkürler

    • Gençay dedi ki:

      Merhaba,

      Öyle bir durumda ilgili listeyi farklı bir static class‘ta tutabilir ve ilgili sınıflarda çağırabilirsin.

      İyi çalışmalar.

  1. 19 Mart 2018

    […] erişim belirleyicileri hakkında C# Inheritance(Kalıtım,Miras) başlıklı yazımızda detaylı bir değerlendirmede bulunmuştuk. Bu erişim belirleyicilerinin […]

Bir yanıt yazın

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