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.

Gösterim-7.16:<br />

public BuyukToplayici degerGoster( int gonderilen ) {<br />

return new BuyukToplayici( gonderilen ) {<br />

public int hesaplamaYap() { //iptal etti (override)<br />

return super.degerDondur() + 5 ;<br />

}<br />

}; // noktali virgul sart<br />

} // degerGoster , yordam sonu<br />

Ġlkel int tipinde tanımlanmıĢ gonderilen yerel değiĢkeni, degerGoster() yordamına aittir, isimsiz<br />

sınıfımızın içerisinde kullanılmamıĢtır. return new BuyukToplayici(gonderilen) ifadesi,<br />

degerGoster() yordamına dahil olduğundan bir sorun çıkmaz. Eğer uygulamamızı çalıĢtırırsak, ekran<br />

çıktısı aĢağıdaki gibi olacaktır. ()<br />

Sonuc = 10<br />

7.2.4. Fiziksel İfade<br />

Ġçerisinde <strong>Java</strong> kodları olan fiziksel bir dosya derlendiği (compile) zaman, bu fiziksel dosya içerisinde<br />

tanımlanmıĢ her bir sınıf için, fiziksel bir .class dosyası oluĢturulur. Peki olaylar dahili sınıflar içinde aynı<br />

mıdır? Her bir dahili sınıf için, bir fiziksel .class dosyası oluĢturulur mu? Eğer oluĢturuluyorsa ismi ne<br />

olur? ()<br />

Her bir dahili sınıf için (3 çeĢit dahili sınıf içinde geçerli) fiziksel .class dosyası oluĢturulur. Bu .class<br />

dosyasının ismi ise, çevreleyen sınıfın ismi + $ + dahili sınıfın ismi Ģeklindedir. Hesaplama1.java<br />

örneğimizden bir gösterim yaparsak; ()<br />

Gösterim-7.17:<br />

Hesaplama1$1.class<br />

Hesaplama1$Bolme.class<br />

Hesaplama1$Carpma.class<br />

Hesaplama1$Cikartma.class<br />

Hesaplama1$Toplama.class<br />

Hesaplama1.class<br />

Hesaplama1 sınıfı, Bolme, Carpma, Cikartma ve Toplama sınıflarının çevreliyici sınıfıdır, böyle<br />

olunca dahili sınıflarımıza ait .class dosyasının ismi de ÇevreliyiciSınıf$DahiliSınıf biçiminde olduğunu<br />

görürüz. ()<br />

<strong>Java</strong>, Hesaplama9.java örneğimizdeki isimsiz sınıf için nasıl bir .class dosyası oluĢturur? Cevabı hemen<br />

aĢağıdadır; ()<br />

Gösterim-7.18.<br />

199

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

Saved successfully!

Ooh no, something went wrong!