Sobes.tech
Junior

Nima uchun anonim sinflar va ular qayerda qo'llaniladi?

sobes.tech AI

AIdan javob

Noma klass nomli ichki sinf bo‘lib, nomi bo‘lmagan lokal ichki sinf.

  • Qo‘llanilishi:

    • GUI ilovalarda voqea tinglovchilarini yaratishda (masalan, tugmalar uchun).
    • Interfeyslarni amalga oshirish yoki abstrakt sinflarni "joyida" kengaytirishda, faqat bitta nusxa kerak bo‘lsa va uning foydalanishi mahalliy bo‘lsa.
    • Ko‘p ipli dasturlashda Runnable yoki Callable nusxalarini yaratish uchun.
  • Afzalliklari:

    • Sinfni takroran ishlatish shart emas bo‘lsa, kod hajmini qisqartiradi.
    • Oddiy, bir martalik amalga oshirishlar uchun kodni oson o‘qish imkonini beradi.
  • Kamchiliklari:

    • Murakkab amalga oshirishlar uchun kodni o‘qish qiyinlashtirishi mumkin.
    • Takroran ishlatilmaydi.
    • Tashqi sinf maydonlariga kirish faqat final yoki effektively final o‘zgaruvchilar orqali amalga oshiriladi eski Java versiyalarida.
// Runnable uchun nomli sinfdan foydalanish misoli
Runnable myRunnable = new Runnable() {
    @Override
    public void run() {
        System.out.println("Nomli sinfda ishlash.");
    }
};

new Thread(myRunnable).start();
// Voqealar tinglovchisi uchun nomli sinfdan foydalanish misoli (hipotetik)
// Ba'zi UI freymvorklar bunday yondashuvni qo‘llaydi.
//button.setOnAction(new EventHandler<ActionEvent>() {
//    @Override
//    public void handle(ActionEvent event) {
//        System.out.println("Tugma bosildi!");
//    }
//});