![]() |
![]() | ![]() |
C# Inheritance(Miras) Nedir? |
Yanıt Yaz
|
| Yazar | |
DoguhanAydeniz
Moderatör
Kayıt Tarihi: 30/Ekim/2009 Konum: Ystanbul Aktif Durum: Aktif Değil Gönderilenler: 13 |
Alıntı Cevapla
Konu: C# Inheritance(Miras) Nedir?Gönderim Zamanı: 02/Kasym/2009 Saat 11:55 |
|
Inheritance, bir babanyn o?luna byrakty?y bir gayrimenkul gibidir veya babanyn DNA'syndan o?luna geçen karakteristik özellik gibidir. Hemen bir örnek yaparak inheritance neymi? bakalym.Marka, Model ve Araba adly 3 tane class(synyf) yapaca?yz. Araba synyfy Model synyfyndan, Model synyfy da Marka synyfyndan inherit olacak. MARKA SINIFI : Marka synyfymyzy yazalym, Marka'nyn 2 tane özelli?i olacak "MarkaAdi" ve "Tarihce" ?eklinde. public class Marka { private string _MarkaAdi;public string MarkaAdi { get { return _MarkaAdi; } set { _MarkaAdi = value; }} private string _Tarihce;public string Tarihce { get { return _Tarihce; } set { _Tarihce = value; }}
public Marka() { // // TODO: Add constructor logic here // } } MODEL SINIFI : ?imdi de Model synyfymyzy yazalym. Buna da ModelAdi, EnYuksekHiz, DortKapiMi, CabrioMu ve Fiyat adynda 5 tane property tanymlayalym ve en önemli dikkat etmeniz gereken nokta synyfymyzyn adynyn yanyna ": Marka" diyerek Model synyfyny Marka synyfyndan türetmemiz olmalydyr. Bunu dedi?imiz takdirde Model synyfynyn baba synyfy Marka olacak ve onun özelliklerini de kullanabilecek. public class Model : Marka { private string _ModelAdi;public string ModelAdi { get { return _ModelAdi; } set { _ModelAdi = value; }} private int _EnYuksekHiz;public int EnYuksekHiz{ get { return _EnYuksekHiz; } set { _EnYuksekHiz = value; }} private bool _DortKapMi;public bool DortKapiMi { get { return _DortKapMi; } set { _DortKapMi = value; }} private bool _CabrioMu;public bool CabrioMu { get { return _CabrioMu; } set { _CabrioMu = value; }} private string _Fiyat;public string Fiyat { get { return _Fiyat; } set { _Fiyat = value; }} public Model() { // } } ARABA SINIFI : Araba synyfymyzy yapalym ve Model synyfyndan türetelim. Bu synyfa bir arabanyn herkese göre de?i?ebilen özelliklerini tanymlyyorum. Mesela ?ase Numarasy her arabada farklydyr veya her arabanyn sahibi farkly olmasy gibi. Bu synyfta ki Property(Özellik)'lerimiz : SahipAdSoyad, ModifiyeliMi, SaseNo'dur. public class Araba : Model { private string _SahipAdSoyad;public string SahipAdSoyad { get { return _SahipAdSoyad; } set { _SahipAdSoyad = value; }} private bool _ModifiyeliMi;public bool ModifiyeliMi { get { return _ModifiyeliMi; } set { _ModifiyeliMi = value; }} private string _SaseNo;public string SaseNo { get { return _SaseNo; } set { _SaseNo = value; }} public Araba() { // // TODO: Add constructor logic here // } }
?imdi ise olacaklara bakalym ve birbirinden inherit olmu? synyflarymyzy kullanmaya ba?layalym. Ben bir web projesi yapyyorum ve herhangi bir sayfanyn Page_Load event'yna a?a?ydaki ?ekilde tanymlamalar yapyp synyflarymy kullanyyorum. Bu durumda Araba torun oldu, Model baba oldu, Marka ise Dede oldu. Dededen gelen özellikler nelerdir toruna MarkaAdi ve Tarihce property'leri. Baba'dan gelen özelliklerde ModelAdi, CabrioMu, EnYuksekHiz, Fiyat ve DortKapiMi propertyleridir. Araba, torun inherit oldu?u için ailesinden gelen tüm özelliklere sahiptir artyk. Aslynda sadece property de?il method'larda miras olarak kalabilirdi ama biz method yazmadyk. Mesela dedenin "OsmanlyTokadiAt" diye bir metodu olsaydy, torun da dedesinin bu metodunu kullanarak önüne gelene tokat atabilecekti. Tabii biz ?iddetten yana de?iliz. :) protected void Page_Load(object sender, EventArgs e)
{ //Araba synyfyny Car diye bir de?i?kene ba?ladyk. Araba Car = new Araba();//Marka synyfyna ait özellikler Car.MarkaAdi = "Hyundai";Car.Tarihce = "Hyundai hakkynda tarihçe yazysy gelecek..."; //Marka synyfyna ait özellikler Car.ModelAdi = "Getz";Car.CabrioMu = false; Car.DortKapiMi = true; Car.EnYuksekHiz = 220; Car.Fiyat = "13750"; //Araba synyfyna ait özellikler Car.SahipAdSoyad = "Do?uhan AYDENIZ";Car.ModifiyeliMi = false; Car.SaseNo = "F1GHA934FJ330IMDF23"; } Araba synyfyny yukarydaki gibi tanymladyktan sonra Car de?i?kenimizin sonuna nokta koyun ve inherit olan özellikleri listeleyin. Düzenleyen DoguhanAydeniz - 02/Kasym/2009 Saat 12:01 |
|
|
Yyi çaly?malar,
Do?uhan AYDENYZ www.doguhanaydeniz.com |
|
![]() |
|
Jenna
Yeni Yazılımcı
Kayıt Tarihi: 09/Mart/2010 Konum: Ba?kent Aktif Durum: Aktif Değil Gönderilenler: 24 |
Alıntı Cevapla
Gönderim Zamanı: 09/Mart/2010 Saat 21:48 |
|
Ynheritance önemli bir kavram, iyi bir ?ekilde anla?ylmasy gerekiyor çünkü programlamada çok i?e yaryyor. C#'da bilmiyorum ama C++'da baya kullandyk =) Te?ekkürler, güzel bir anlatym olmu? :)
|
|
![]() |
|
Yanıt Yaz
|
| Forum Atla | Forum İzinleri ![]() Kapalı Foruma Yeni Konu Gönderme Kapalı Forumdaki Konulara Cevap Yazma Kapalı Forumda Cevapları Silme Kapalı Forumdaki Cevapları Düzenleme Kapalı Forumda Anket Açma Kapalı Forumda Anketlerde Oy Kullanma |

| Akoren.com Kurtlar Vadisi Pusu |