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

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

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!