Junior — Middle
Омӯзиши синфи фарзӣ дар вақти сохтани он зарур аст, ки конструктори синфи асосиро даъват кунад?
sobes.tech AI
Ҷавоб аз AI
В Java при создании дочернего класса вызов конструктора базового класса обязателен, но он может быть неявным. Если в конструкторе дочернего класса явно не вызвать конструктор суперкласса через super(), компилятор автоматически вставит вызов без аргументов к конструктору базового класса. Однако если у базового класса нет конструктора без параметров, то вызов конструктора базового класса должен быть сделан явно с нужными аргументами.
Пример:
class Base {
Base(int x) { }
}
class Derived extends Base {
Derived() {
super(10); // обязательный вызов конструктора базового класса с параметром
}
}
Если базовый класс имеет конструктор без параметров, то вызов super() вставится автоматически, и писать его явно необязательно.