OOP-də JavaScript-də Miras zamanı Konstruktor
Miras zamanı valideynin konstruktorunu yenidən təyin edə bilərsiniz. Nümunəyə baxaq. Tutaq ki, bizim aşağıdakı valideyn sinfimiz var:
class User {
constructor(name, surn) {
this.name = name;
this.surn = surn;
}
getName() {
return this.name;
}
getSurn() {
return this.surn;
}
}
Tutaq ki, valideyn sinfindən aşağıdakı sinif miras alır:
class Student extends User {
}
Tutaq ki, biz miras alan sinifdə konstruktoru genişləndirmək, ona əlavə parametrlər əlavə etmək istəyirik:
class Student extends User {
constructor(name, surn, year) {
}
}
Bu halda, mütləq olaraq ilk sətirdə
valideyn konstruktorunu super
vasitəsilə çağırmalıyıq:
class Student extends User {
constructor(name, surn, year) {
super();
}
}
super əmri mahiyyət etibarilə
valideynin konstruktorudur. Ona
lazımi parametrləri ötürək:
class Student extends User {
constructor(name, surn, year) {
super(name, surn);
}
}
İndi miras alan sinifdə təhsil ilini miras alanın öz xüsusiyyətinə yazaq:
class Student extends User {
constructor(name, surn, year) {
super(name, surn);
this.year = year;
}
}
Təhsil ili üçün getter edək:
class Student extends User {
constructor(name, surn, year) {
super(name, surn);
this.year = year;
}
getYear() {
return this.year;
}
}
Tutaq ki, Employee sinfi
bu dərsdəki User sinfindən
miras alır.
Employee sinfində valideyn
konstruktorunu yaş və maaş parametri
əlavə etməklə yenidən təyin edin.
Yaş və maaş üçün getterlər edin.