Sobes.tech
Middle

İç içe sınıflar nedir ve programlamada nasıl kullanılırlar?

sobes.tech yapay zeka

AI'dan gelen yanıt

İç içe sınıflar, başka bir sınıfın içinde bildirilen sınıflardır. Sadece bir yerde kullanılan sınıfları mantıksal olarak gruplandırmaya, kapsüllemeyi artırmaya ve kodun okunabilirliğini sağlamaya olanak tanır.

İç içe sınıflar şunlardır:

  • Statik (Statik İç İçe Sınıflar): Dış sınıfın statik olmayan üyelerine erişemezler. Dış sınıf örneği olmadan oluşturulabilirler.
  • Statik olmayan (İç Sınıflar): Tüm dış sınıf üyelerine (özel üyeler dahil) erişebilirler. Statik olmayan iç sınıf örneği oluşturmak için dış sınıf örneği gerekir.

Uygulamalar:

  • Gerçekleştirmeyi gizleme: İç içe sınıf, dışarıdan erişilmemesi gereken uygulama detaylarına sahip yardımcı bir sınıf olarak kullanılabilir.
  • Gruplama: Yakın ilişkili sınıfların mantıksal birleşimi.
  • Geribildirim / dinleyici uygulaması: Sık sık arayüzleri veya soyut sınıfları uygulamak için anonim iç sınıflar oluşturmak amacıyla kullanılır.
  • İteratörler: İç sınıf, koleksiyonun iç durumuna erişimi olduğu için iterator uygulaması için uygundur.

Örnek (Java):

class OuterClass {
    private int outerField;

    // Statik iç içe sınıf
    static class StaticNestedClass {
        void print() {
            // outerField'a erişimi yok
            System.out.println("StaticNestedClass'tan");
        }
    }

    // İç sınıf
    class InnerClass {
        void print() {
            // outerField'a erişim
            System.out.println("outerField: " + outerField);
        }
    }
}
// Statik iç içe sınıf örneği oluşturma
OuterClass.StaticNestedClass staticNested = new OuterClass.StaticNestedClass();
staticNested.print();

// İç sınıf örneği oluşturma
OuterClass outer = new OuterClass();
OuterClass.InnerClass inner = outer.new InnerClass();
inner.print();