Kaedah Persendirian dalam Pewarisan OOP dalam JavaScript
Kaedah persendirian tidak diwarisi. Ini dilakukan secara sengaja, untuk tidak melanggar encapsulation. Mari kita lihat contoh. Katakan kita ada kelas induk berikut dengan kaedah persendirian:
class User {
setName(name) {
this.name = name;
}
getName() {
return this.#capeFirst(this.name);
}
#capeFirst(str) {
return str[0].toUpperCase() + str.slice(1);
}
}
Katakan kelas induk diwarisi oleh kelas berikut:
class Student extends User {
setSurn(surn) {
this.surn = surn;
}
getSurn() {
return this.surn;
}
}
Katakan kelas anak ingin menggunakan kaedah persendirian induk. JavaScript tidak akan membenarkannya dan akan memberikan ralat:
class Student extends User {
setSurn(surn) {
this.surn = surn;
}
getSurn() {
return this.#capeFirst(this.surn); // akan dapat ralat
}
}
Cuba dalam kelas Employee
gunakan kaedah persendirian
induk.