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.

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!