Mbinte Binafsi katika Urithi katika OOP katika JavaScript
Mbinte binafsi hazirithiwi. Hii imefanywa kwa makusudi, ili kuzuia kiwango cha siri. Hebu tuangalie kwa mfano. Tuchukulie tuna darasa la mzazi lifuatalo na mbinte binafsi:
class User {
setName(name) {
this.name = name;
}
getName() {
return this.#capeFirst(this.name);
}
#capeFirst(str) {
return str[0].toUpperCase() + str.slice(1);
}
}
Tuchukulie darasa lifuatalo linarithi kutoka kwa darasa la mzazi:
class Student extends User {
setSurn(surn) {
this.surn = surn;
}
getSurn() {
return this.surn;
}
}
Tuchukulie mzaa anataka kutumia mbinte binafsi ya mzazi. JavaScript haitaruhusu hii na itatoa hitilafu:
class Student extends User {
setSurn(surn) {
this.surn = surn;
}
getSurn() {
return this.#capeFirst(this.surn); // itakuwa na hitilafu
}
}
Jaribu katika darasa Employee
kutumia mbinte binafsi
ya mzazi.