Sobes.tech
Middle

Je možné v Jave vytvoriť objekt abstraktnej triedy?

sobes.tech AI

Odpoveď od AI

V Jave nie je možné priamo vytvoriť objekt abstraktnej triedy, pretože abstraktná trieda je určená na to, aby slúžila ako základ pre iné triedy a môže obsahovať abstraktné metódy bez implementácie. Avšak je možné vytvoriť objekt anonymnej podtriedy abstraktnej triedy, implementovaním všetkých abstraktných metód na mieste.

Príklad:

abstract class Animal {
    abstract void sound();
}

public class Main {
    public static void main(String[] args) {
        Animal a = new Animal() {
            void sound() {
                System.out.println("Meow");
            }
        };
        a.sound(); // Vytlačí "Meow"
    }
}

Týmto spôsobom nie je objekt priamo vytvorený z abstraktnej triedy, ale z anonymnej triedy, ktorá ju dedí a implementuje všetky abstraktné metódy.