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.

Dahili üye sınıflar, baĢka sınıflardan türetilebildiği gibi arayüzlere eriĢip, bunların içlerindeki gövdesiz<br />

yordamları iptal edebilir, aynı normal sınıflar gibi... ()<br />

7.2.2. Yerel Sınıflar (Local Classes)<br />

Yerel sınıflar, yapılandırıcıların (constructor), sınıf yordamlarının (statik yordam), nesne yordamların,<br />

statik alanlara toplu değer vermek için kullandığımız statik bloğun (bkz:bölüm 3) veya statik olmayan<br />

alanlara toplu değer vermek için kullandığımız bloğun (bkz:bölüm 3) içerisinde tanımlanabilir. Yerel<br />

sınıfların genel gösterimi aĢağıdaki gibidir; ()<br />

Gösterim-7.12:<br />

public class Sinif {<br />

public void yordam() {<br />

public class YerelSinif {<br />

//...<br />

}<br />

}<br />

}<br />

Yerel sınıflar, yalnızca içinde tanımlandıkları, yordamın veya bloğun içerisinde geçerlidir. Nasıl ki dahili<br />

üye sınıfların çevreleyici sınıfları vardı, yerel sınıfların ise çevreleyici yordamları veya blokları vardır.<br />

Yerel sınıflar tanımlandıkları bu yordamların veya blokların dıĢarısından eriĢilemezler. ()<br />

Yerel sınıflara ait ilk özellikleri verelim;<br />

Yerel sınıflar tanımlandıkları yordamın veya bloğun dıĢından eriĢilemezler. ()<br />

Yerel sınıflar baĢka sınıflardan türetilebilir veya arayüzlere (interface) eriĢebilir. ()<br />

Yerel sınıfların yapılandırıcıları olabilir. ()<br />

Yukarıdaki özelikleri <strong>Java</strong> uygulamasında ispatlanırsa;<br />

Örnek: Hesaplama6.java ()<br />

interface Toplayici {<br />

public int hesaplamaYap() ;<br />

}<br />

public class Hesaplama6 {<br />

public int topla(int a, int b) {<br />

class Toplama6 implements Toplayici {<br />

private int deger1 ;<br />

private int deger2;<br />

public Toplama6(int deger1, int deger2) { //<br />

yapilandirici<br />

this.deger1 = deger1;<br />

this.deger2 = deger2;<br />

}<br />

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

return deger1+deger2;<br />

193

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

Saved successfully!

Ooh no, something went wrong!