Sobes.tech
Junior — Middle

Каква е основната цел на създаването на абстрактни класове в обектно-ориентираното програмиране?

sobes.tech AI

Отговор от AI

Основната цел на абстрактните класове е да зададат общ шаблон за група свързани класове, като определят основната структура и поведение, но без да реализират всички детайли. Абстрактният клас не може да бъде инстанциран директно; служи за наследяване и задължава наследниците да реализират определени методи. Това помага за осигуряване на единство и избягване на дублиране на код.

Пример на PHP:

abstract class Animal {
    abstract public function makeSound();

    public function sleep() {
        echo "Спи...";
    }
}

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

$dog = new Dog();
$dog->makeSound(); // Ще изведе: Га!
$dog->sleep();     // Ще изведе: Спи...