Sobes.tech
Middle

È possibile creare un oggetto di una classe astratta in Java?

sobes.tech AI

Risposta dell'AI

In Java, non è possibile creare un oggetto di una classe astratta direttamente, poiché la classe astratta è destinata a fungere da base per altre classi e può contenere metodi astratti senza implementazione. Tuttavia, è possibile creare un oggetto di una classe anonima che eredita dalla classe astratta, implementando tutti i metodi astratti sul posto.

Esempio:

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(); // Stampa "Meow"
    }
}

In questo modo, l'oggetto non viene creato direttamente dalla classe astratta, ma da una classe anonima che la eredita e implementa tutti i metodi astratti.