06.03.2015 Views

Java Kitabı

JAva`nın çalışma mantığıyla başlayıp basitten gelişmişe iyi bir kaynak

JAva`nın çalışma mantığıyla başlayıp basitten gelişmişe iyi bir kaynak

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

BÖLÜM 5<br />

SINIFLARIN TEKRAR KULLANILMASI<br />

Belli bir amaç için yazılmıĢ ve doğruluğu kanıtlanmıĢ olan sınıfları, yeni uygulamaların içerisinde<br />

kullanmak hem iĢ süresini kısaltacaktır hem de yeni yazılan uygulamalarda hata çıkma riskini en aza<br />

indirgeyecektir. Uygulamalarımızda daha evvelden yazılmıĢ ve doğruluğu kanıtlanmıĢ olan sınıfları<br />

tekrardan kullanmanın iki yöntemi bulunur. ()<br />

Birinci yöntem komposizyon‘dur. Bu yöntem sayesinde daha önceden yazılmıĢ ve doğruluğu kanıtlanmıĢ<br />

olan sınıf/sınıfları, yeni yazılan sınıfın içerisinde doğrudan kullanabilme Ģansına sahip oluruz. Daha önceki<br />

bölümlerde komposizyon yöntemini çokça kullandık. ()<br />

Ġkinci yöntem ise kalıtımdır (inheritance). Bu yöntemde yeni oluĢturacağımız sınıfı, daha evvelden<br />

yazılmıĢ ve doğruluğu kanıtlanmıĢ olan sınıftan türetilir; böylece yeni oluĢan sınıf, türetildiği sınıfın<br />

özelliklerine sahip olur; Ayrıca oluĢan bu yeni sınıfın kendisine ait yeni özellikleri de olabilir. ()<br />

5.1. Komposizyon<br />

Komposizyon yönetimini daha önceki örneklerde kullanıldı. ġimdi bu yöntemin detaylarını hep beraber<br />

inceleyelim. ()<br />

Gösterim-5.1:<br />

class Meyva {<br />

//...<br />

}<br />

Gösterim-5.2:<br />

class Elma {<br />

private Meyva m = new Meyva();<br />

//...<br />

}<br />

Elma sınıfı, Meyva sınıfını doğrudan kendi içerisinde tanımlayarak, Meyva sınıfının içerisindeki eriĢilebilir<br />

olan özellikleri kullanabilir. Buradaki yapılan iĢ Elma sınıfını Meyva sınıfına bağlamaktır. Sınıfların<br />

arasındaki iliĢki UML diyagramında gösterilirse; ()<br />

BaĢka bir örnek verilirse,<br />

Şekil-5.1. Komposizyon-I<br />

111

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!