Наличие конструктора в классе не всегда обязательно для его правильной работы. Если в классе не объявлен ни один конструктор, компилятор автоматически создаёт конструктор по умолчанию без параметров.
Является ли обязательным наличие конструктора в классе для его правильной работы?
Наличие конструктора в классе не всегда обязательно для его правильной работы. Если в классе не объявлен ни один конструктор, компилятор автоматически создаёт конструктор по умолчанию без параметров.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Наличие конструктора в классе не всегда обязательно для его правильной работы. Если в классе не объявлен ни один конструктор, компилятор автоматически создаёт конструктор по умолчанию без параметров.
Однако, если нужны инициализация с параметрами или особая логика при создании объекта, то конструктор нужно объявить явно.
Пример на Swift:
class Person {
var name: String
// Конструктор обязателен, так как есть обязательное свойство без значения по умолчанию
init(name: String) {
self.name = name
}
}
Если все свойства имеют значения по умолчанию, то конструктор можно не писать, и класс будет работать корректно.