search
Giriş
Merhabalar arkadaşlar, Sitemizi programlama ile ilgilenen bütün arkadaşlarımızın Türkçe içerik konusunda çektiği sıkıntılar düşünülerek soru/cevap şeklinde bir etkileşimde bulunabilmesi için kurduk. Umuyoruz hepimiz için güzel bir deneyim olur. Hasscript Ekibi
0 oy
939 gösterim
Java programlama dilinde "inheritance" kavramının ne işe yarar? nasıl kullanırız kod örneği verebilir misiniz?
Web Programlama kategorisinde 2.0k puan

1 cevap

2 oy

Kısa bir tanımla. Senin çalışıp çabalayıp bir sürü özellik geliştirip kendini değerli duruma getirmek yerine, bu özelliklerin senin atalarından gelmesi olayıdır :) yani baba, dede bazı şeylere sahipse senin de otomatik olarak sahip olman demektir. 

Özellik anlamında babanın kendine ait olan malları/özellikleri 3 şekle ayırabilir.
1-Kendine ait bırakabilir, biraz özel olmasını isteyebilir (private)
2-Sadece çocuklarının bu malları/özellikleri kullanabilmesini isteyebilir (protected)
3-Genele yayıp herkesin kullanımına açabilir (public)

Bu malları/özellikleri kendisi nasıl paylaştıracağını belirledikten sonra devreye sen giriyorsun. Babadan bu özellikleri alıyorsun (extends) sonra kendi içinde kullanabilirsin, geliştirebilirsin. Verimli bir şekilde hayatını (yazılım süreci) devam ettirmeye çalışıyorsun. Şayet güzel bir miras sistemi uygularsan sonraki gelen çocukların işlerini rahatlatmış olursun. Yoksa miras kavgalarına da dönüşebilir. Nasıl yani dersen; en bariz örneklerinden birisi sana bir miras geldiğini bilmeyip, malları/özellikleri kendin geliştirmeye çalışabilirsin ya da mirasa çok güvenip ortada kalabilirsin, vs vs.

Hikaye kısmını geçer bu hikayeyi yazmaya çalışırsak:

class Baba {
  private OzelMulk om1;
  protected ColukCocukPayi ccp1;
  public Hayrat h1;
}

class Cocuk extends Baba {
   // Bu kısımda, babadan kalan çocuk çocuk payı ve hayrat kısımları kullanılabilir. ama OzelMulk kullanılamayacaktır.
}

Biraz fazla basit oldu ama akılda kalan soru işareti varsa tek tek gidebiliriz. Dikkat etmemiz gereken baba zaten bazı şeylere sahip. Bu sahip olduğu şeyler değişken veya metod şekilde olacaktır. Bunun miras kalma işlemi extends sözcüğü ile belirlenir. Kaldıktan sonra çocuk bu malları zaten kullanabilir. 

Biraz tecrübesiz arkadaşlar için not: bütün sınıflar bir başka sınıftan kalıtlama yapilir. ÖzelMülk, ColukCocukPayı dediklerim de başka sınıflardan kalıtlayabilir. Örnek verirken baba/cocuk örneği verdim ama kafa karışmasın.

Saygılar.

6.2k puan

İlgili sorular

0 oy
2 cevap 891 gösterim
891 gösterim
Ben Php kullanarak OOP kavramları üzerinde daha iyi bir anlayış ve tecrübe geliştirmeye çalışıyorum. OOP kavramlarında composition ve inheritance adında iki farklı konu var. Bunlar nedir ve ne farkları vardır?
1 Haziran 2023 Genel Kavramlar kategorisinde Barış ENGİN 132 puan sordu
1 oy
1 cevap 2.7K gösterim
2.7K gösterim
Merhaba Spring MVC deki yapı Controller => DAO=> Model=> DB şeklinde. Controller ile DAO arasına bir de Service Layer denilen bir katman daha konuyor. Tam olarak bu katman ne işe yarıyor. Fazladan bir iş gibi geldi bana bilen var mıdır? Teşekkürler İyi haftasonları
30 Eylül 2017 Java kategorisinde erkanerkisi 211 puan sordu
0 oy
1 cevap 1.5K gösterim
1.5K gösterim
Selam, Serializable interface ini implement ettikten sonra, "Adds a default serial version ID to the selected type." diye bir uyarı çıkıyor, serialVersionUID ne için kullanılmaktadır bilgisi olan var mı?
4 Şubat 2017 Java kategorisinde tolgacelik.art 2.0k puan sordu
0 oy
1 cevap 995 gösterim
995 gösterim
Java'da swagger adında bir kütüphane var ve son zamanlarda şöhreti artarak devam ediyor. Bu kütüphane ne işe yarar?
20 Nisan 2019 Web Programlama kategorisinde sinan 291 puan sordu
0 oy
1 cevap 487 gösterim
487 gösterim
İnternette JNDI konususunu araştırırken active directory konusu çıktı karşıma, bu nedir ve ne işe yarar?
27 Aralık 2016 Web Programlama kategorisinde tolgacelik.art 2.0k puan sordu