Каким образом можно реализовать создание экземпляра, использующего абстрактный класс?

В PHP абстрактный класс нельзя инстанцировать напрямую.

Короткий ответ

Что ответить на собеседовании

В PHP абстрактный класс нельзя инстанцировать напрямую. Чтобы создать объект, использующий абстрактный класс, нужно создать класс-наследник, который реализует все абстрактные методы родителя, и затем создать экземпляр этого наследника.

Подробный разбор

Ответ с пояснениями

В PHP абстрактный класс нельзя инстанцировать напрямую. Чтобы создать объект, использующий абстрактный класс, нужно создать класс-наследник, который реализует все абстрактные методы родителя, и затем создать экземпляр этого наследника.

Пример:

abstract class Animal {
    abstract public function makeSound();
}

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

$dog = new Dog();
echo $dog->makeSound(); // Выведет: Гав!

Таким образом, создание экземпляра происходит через конкретный класс, который расширяет абстрактный и реализует его методы.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее