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.

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!