Sobes.tech
Junior

Čo sú to anonymné triedy a kde sa používajú?

sobes.tech AI

Odpoveď od AI

Anonymná trieda je lokálna vnútorná trieda bez mena.

  • Použitie:

    • Pri vytváraní poslucháčov udalostí v GUI aplikáciách (napríklad pre tlačidlá).
    • Na implementáciu rozhraní alebo rozšírenie abstraktných tried "na mieste", keď je potrebná iba jedna inštancia a jej použitie je lokálne.
    • V viacvláknovom programovaní na vytváranie inštancií Runnable alebo Callable.
  • Výhody:

    • Skracujú množstvo kódu, keď nie je potrebné opakované použitie triedy.
    • Zjednodušujú čítanie kódu pre jednoduché, jednorazové implementácie.
  • Nevýhody:

    • Môžu znižovať čitateľnosť kódu pri zložitých implementáciách.
    • Nedajú sa znovu použiť.
    • Prístup k poliam vonkajšej triedy je možný iba cez final alebo efektívne finalné premenné v starších verziách Javy.
// Príklad použitia anonymnej triedy pre Runnable
Runnable myRunnable = new Runnable() {
    @Override
    public void run() {
        System.out.println("Beží v anonymnom vlákne.");
    }
};

new Thread(myRunnable).start();
// Príklad použitia anonymnej triedy pre poslucháča udalostí (hypotetický)
// Niektoré UI frameworky používajú takýto prístup.
//button.setOnAction(new EventHandler<ActionEvent>() {
//    @Override
//    public void handle(ActionEvent event) {
//        System.out.println("Tlačidlo bolo stlačené!");
//    }
//});