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.

SinifA sınıfının içerisinde tanımlanan A1 arayüzüne, SinifB sınıfından ulaĢılabilir. Bir sınıfın içerisinde<br />

dahili arayüz tanımlanabildiği gibi dahili sınıfda tanımlanabilir. Bu konu az sonra incelenecektir. Bu<br />

örneğimizdeki ana fikir, bir sınıfın içerisinde nasıl dahili arayüzün oluĢturulduğu ve bu dahili arayüzün,<br />

dahili sınıf olsun veya dıĢarıdan baĢka bir sınıf tarafından olsun, nasıl eriĢilebildiğini göstermektir. ()<br />

7.2. Dahili Sınıflar (Inner Classes)<br />

Dahili sınıflar JDK 1.1 ile gelen bir özelliktir. Bu özellik sayesinde bir sınıf diğer bir sınıfın içerisinde<br />

tanımlanabilir; böylece mantıksal bir bütünü oluĢturan bir çok sınıf tek bir çatı alında toplanır. Dahili<br />

sınıflar yapısal olarak 3 gruba ayrılabilir. ()<br />

Dahili üye sınıflar<br />

Yerel sınıflar (Local classes)<br />

Ġsimsiz sınıflar (Anonymous classes)<br />

7.2.1. Dahili Üye Sınıflar<br />

Bir sınıfın içerisinde, baĢka bir sınıfı tanımlamak mümkündür; ġöyle ki... ()<br />

Gösterim-7.8:<br />

class CevreliyiciSinif {<br />

class DahiliSinif {<br />

//....<br />

}<br />

}<br />

//...<br />

BaĢka bir sınıfın içerisinde tanımlanan bu sınıfa dahili üye sınıf denir. Dahili sınıfları, çevreleyici sınıfların<br />

içerisinde kullanmak, geçen bölümlerde incelediğimiz komposizyondan yönteminden farklıdır. ()<br />

Dahili üye sınıflar, tek baĢlarına bağımsız sınıflar gibi düĢünülebilir. Örnek üzerinde incelersek. ()<br />

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

public class Hesaplama {<br />

public class Toplama { //Dahili uye sinif<br />

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

return a+b ;<br />

}<br />

} // class Toplama<br />

public static void main(String args[]) {<br />

Hesaplama.Toplama ht = new Hesaplama().new<br />

Toplama() ;<br />

178

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

Saved successfully!

Ooh no, something went wrong!