JavaScript-те ОЖЖ-де мұрагерлік кезіндегі конструктор
Мұрагерлік кезінде ата-ананың конструкторын қайта анықтауға болады. Мысал арқылы қарастырайық. Бізде келесі ата-ана сыныбы бар делік:
class User {
constructor(name, surn) {
this.name = name;
this.surn = surn;
}
getName() {
return this.name;
}
getSurn() {
return this.surn;
}
}
Ата-ана сыныбынан келесі сынып мұрагерлік етсін:
class Student extends User {
}
Біз мұрагер сыныбында конструкторын қосымша параметрлер қосу арқылы кеңейткіміз келеді делік:
class Student extends User {
constructor(name, surn, year) {
}
}
Бұл жағдайда біз бірінші жол ретінде
міндетті түрде super арқылы
ата-ананың конструкторын шақыруымыз керек:
class Student extends User {
constructor(name, surn, year) {
super();
}
}
super командасы мәні бойынша
ата-ананың конструкторы болып табылады.
Сондықтан оған қажетті параметрлерді
берейік:
class Student extends User {
constructor(name, surn, year) {
super(name, surn);
}
}
Енді мұрагерде оқу жылын мұрагердің өз қасиетіне жазайық:
class Student extends User {
constructor(name, surn, year) {
super(name, surn);
this.year = year;
}
}
Оқу жылы үшін геттер жасайық:
class Student extends User {
constructor(name, surn, year) {
super(name, surn);
this.year = year;
}
getYear() {
return this.year;
}
}
Employee сыныбы осы сабақтағы
User сыныбынан мұрагерлік етсін.
Employee сыныбында ата-ананың
конструкторын жасы мен жалақы параметрлерін
қосу арқылы қайта анықтаңыз.
Жасы мен жалақы үшін геттерлер жасаңыз.