Java’da Nested (İç İçe) Sınıflar

sametklou

Java’da Nested (İç İçe) Sınıflar

Java programlama dilinde, bir sınıfın başka bir sınıfın içinde tanımlanması mümkündür. Bu tür iç içe sınıflara "nested class" veya "inner class" denir. Inner class'lar, dış sınıfın özelliklerine ve metotlarına erişebilirler.

Inner Class Türleri

Java'da iç içe sınıflar dört farklı türde olabilir:

  1. Static Inner Class (Statik İç Sınıf): Dış sınıfı instance oluşturmadan kullanılabilen ve static değişkenlere erişebilen bir iç sınıftır.
  2. Non-Static Inner Class (Statik Olmayan İç Sınıf): Dış sınıfın bir örneği oluşturulmadan önce oluşturulamayan bir iç sınıftır. Dış sınıfın özelliklerine erişebilir ve özelliklerini değiştirebilir.
  3. Local Inner Class (Yerel İç Sınıf): Metot içinde tanımlanan ve yalnızca tanımlandığı metotta kullanılabilen bir iç sınıftır.
  4. Anonymous Inner Class (Anonim İç Sınıf): İsmi olmayan ve genellikle tek kullanımlık olan iç sınıflardır.

Inner Class Kullanımı

Inner class'ları aşağıdaki gibi tanımlayabiliriz:

public class Outer {
    private int outerVar = 10;

    public class Inner {
        public void display() {
            System.out.println("Outer variable: " + outerVar);
        }
    }
}

Inner class'a dış sınıfta erişmek için şu şekilde kullanabiliriz:

public class Main {
    public static void main(String[] args) {
        Outer outer = new Outer();
        Outer.Inner inner = outer.new Inner();
        inner.display();
    }
}

Inner class'lar, dış sınıfa ait değişken ve metotlara erişebilir ve onları kullanabilir. Inner class'ları, kodu daha organize etmek ve daha okunabilir hale getirmek için kullanabiliriz.

Inner class'lar Java'da oldukça yaygın bir şekilde kullanılan bir kavramdır. Verilen örnekler ile inner class'ların nasıl kullanılabileceği hakkında daha fazla bilgi edinebilirsiniz.