Kalıtım

Kalıtımın temeli yazdığımız kodların tekrar kullanılıp kod tasarrufu sağlamamızdır.

Kalıtım türetilen sınıfın kullanılması anlamına gelir.

 

Super Class Kavramı: Özelliklerin devralındığı sınıftır.

Sub Class Kavramı: Özellikleri devralan sınıftır. Türetilen sınıf olarakta düşünülebilir.

Tüm sınıfların super classı Object sınıfıdır.

Kısacası bir sınıfın özelliklerini bir hiyerarşi çerçevesinde alt sınıflar da kullanabilmeye kalıtım denir.

Kalıtım konusunda dikkat edilmesi gereken konu tüm sub classlar bir super classtan üretilir.

RESİM1

 

RESİM2

 

Javada ki tüm sınıflar OBJECT sınıfından oluşur. Bütün sınıflar da bir hiyerarşi olmak zorunda değildir.

@Override : Override işlemi java API’sinde yer alan bir metodun değiştirilerek aynı isimde kullanılması demektir. Asıl super classın devre dışı bırakılması durumudur.

 

PROTECTED KAVRAMI: Sub ve super classın elemanları tarafından kullanılanbilmesi durumudur. Private ve public arasında bir konuma sahiptir.

Extends: Superclasstan türetme yapmamızı sağlayan anahtar kelimedir.

! –> Constructerlar türetilemez kalıtım aracılığıyla.

! –> Protected tipli değişkenler sub classlarda kullanılır.

! –> Protected tip private tipe göre daha verimli çalışır. Performansı yüksektir.

! –> Protected daha zahmetli bir tiptir. Eğer bir değişiklik yapılmak istenirse tüm değişkenlerin değiştirilmesi ekstra bir yük oluşturulacağı için dezavantaja sahiptir. Protected tipinde hata olasılığı çok daha fazladır.

! –> Sub classlar super class olabilir. Yani bir sub class başka bir classın super classı olabilir.

! –> clone method işlemi bir metodu kopyalamak olarak nitelendirilebilir.

–> shallow copy: Yüzeysel bir kopyalama işlemidir. Referanslar değişir. Örneğin diziler. Referansların kopyalandığı kopyalama yöntemidir.

–> deep copy: Tüm yapının kopyalanması işlemidir. Her şey olduğu gibi alınıp kopyalanır.

! –> Serileştirme: Bir yapının bellekte saklanma haliyle başka bir yere taşımak ve ya kopyalamak için kullanılır.

! –> equals: Karşılaştırma için kullanılan yapıdır. Referans olarak == operatörünü kullanır.

! –> finalize: Çöp toplayıcılar devreye girmeden işlemin kaydedilmesini sağlayan yapıdır. Çok tavsiye edilen bir yöntem değildir.

! –> getClass() Sınıf hakkında bilgileri veren metoddur.

! –> wait, notify, notifyAll: Threadlerde kullanılan yapılardır.

! –> toString: Stringe dönüştürme işlemini yapar.

! –> Thread: İşlemciyi eş zamanlı paylaşmak için kullanılan yöntemler bütünüdür.

 

Faydalı olması dileğiyle…

Kodlu günler.

 

 

 

 

Advertisements