Senior
super() функциясы жөнүндө айтып бер жана аны качан колдоносуң?
sobes.tech AI
AIден жооп
super() функциясы классларда ата-ана классинин конструкторун же ата-ана методдорун чакыруу үчүн колдонулат.
Ал эки негизги учурда колдонулат:
-
Түзүүчү класстын конструкторунда, негизги класс конструкторун чакырып, мурас алган өзгөчөлүктөрдүн туура башталуусун камсыз кылуу үчүн.
-
Ата-эне методдорун чакыруу үчүн, эгер жүрүм-турумду кеңейтүү же кайра жазуу керек болсо, бирок негизги класс логикасынын бир бөлүгүн сактоо менен.
Мисал:
class Animal {
constructor(name) {
this.name = name;
}
speak() {
console.log(`${this.name} үн чыгарат.`);
}
}
class Dog extends Animal {
constructor(name, breed) {
super(name); // Animal конструкторун чакыруу
this.breed = breed;
}
speak() {
super.speak(); // Animal'дын `speak` методуна чакыруу
console.log(`${this.name} чычкайт.`);
}
}
Кичүү класстын конструкторунда super() чакырылбаса, ката чыгат, анткени негизги класс башталган эмес.