Middle
Daxil olan sinflər nədir və proqramlaşdırmada necə tətbiq olunur?
sobes.tech Süni İntellekt
AI-dan cavab
İç içe sinflər, başqa bir sinfin içində elan olunan sinflərdir. Bu, yalnız bir yerdə istifadə olunan sinfləri məntiqi cəhətdən qruplaşdırmağa, kapsülləməni artırmağa və kodun oxunuşunu asanlaşdırmağa imkan verir.
İç içe sinflər aşağıdakılardır:
- Statik (Statik İç İçe Sinflər): Xarici sinfin qeyri-statik üzvlərinə daxil olmur. Xarici sinfin nümunəsindən asılı olmayaraq yaradıla bilər.
- Qeyri-statik (Daxili Sinflər): Xarici sinfin bütün üzvlərinə (xüsusən özəl olanlar daxil olmaqla) daxil ola bilir. Qeyri-statik daxili sinfi yaratmaq üçün xarici sinfin nümunəsi lazımdır.
Tətbiqlər:
- İcraatı gizlətmək: Daxili sinf köməkçi sinf kimi istifadə oluna bilər, onun həyata keçirilmə detalları xaricdən əlçatan olmamalıdır.
- Qruplaşdırma: Yaxın əlaqəli sinflərin məntiqi birləşməsi.
- Geribildirim / dinləyicilərin həyata keçirilməsi: Tez-tez interfeysləri və ya abstrakt sinfləri həyata keçirmək üçün anonim daxili sinflər yaratmaq üçün istifadə olunur.
- İteratorlar: Daxili sinif kolleksiyanın daxili vəziyyətinə daxil ola bildiyi üçün iteratorun həyata keçirilməsi üçün əlverişlidir.
Nümunə (Java):
class OuterClass {
private int outerField;
// Statik daxili sinif
static class StaticNestedClass {
void print() {
// outerField-ə daxil deyil
System.out.println("StaticNestedClass-dan");
}
}
// Qeyri-statik daxili sinif
class InnerClass {
void print() {
// outerField-ə daxil olur
System.out.println("outerField: " + outerField);
}
}
}
// Statik daxili sinif nümunəsi yaratmaq
OuterClass.StaticNestedClass staticNested = new OuterClass.StaticNestedClass();
staticNested.print();
// Daxili sinif nümunəsi yaratmaq
OuterClass outer = new OuterClass();
OuterClass.InnerClass inner = outer.new InnerClass();
inner.print();