Sobes.tech
Junior — Middle

Qual è l'obiettivo principale della creazione di classi astratte nella programmazione orientata agli oggetti?

sobes.tech AI

Risposta dell'AI

Lo scopo principale delle classi astratte è definire un modello comune per un gruppo di classi correlate, stabilendo la struttura e il comportamento di base, ma senza implementare tutti i dettagli. Una classe astratta non può essere istanziata direttamente; serve per l'ereditarietà e obbliga le classi derivate a implementare determinati metodi. Questo aiuta a garantire coerenza ed evitare duplicazioni di codice.

Esempio in PHP:

abstract class Animal {
    abstract public function makeSound();

    public function sleep() {
        echo "Dorme...";
    }
}

class Dog extends Animal {
    public function makeSound() {
        echo "bau!";
    }
}

$dog = new Dog();
$dog->makeSound(); // Mostrerà: bau!
$dog->sleep();     // Mostrerà: Dorme...