В абстрактном классе конструкторы с параметрами можно создавать или нет?

В абстрактном классе конструкторы с параметрами создавать можно.

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

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

В абстрактном классе конструкторы с параметрами создавать можно. Абстрактный класс может иметь любые конструкторы — как без параметров, так и с параметрами. Это нужно, чтобы при наследовании дочерние классы могли вызывать эти конструкторы для инициализации базовой части объекта.

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

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

В абстрактном классе конструкторы с параметрами создавать можно. Абстрактный класс может иметь любые конструкторы — как без параметров, так и с параметрами. Это нужно, чтобы при наследовании дочерние классы могли вызывать эти конструкторы для инициализации базовой части объекта.

Например, в C#:

abstract class Base
{
    protected int value;
    public Base(int val) { value = val; }
}

class Derived : Base
{
    public Derived(int val) : base(val) {}
}

Таким образом, наличие конструкторов с параметрами в абстрактном классе — нормальная практика для передачи данных в базовую часть объекта.

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

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

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

Подробнее