Приватни својства при наследувањето во ООП во JavaScript
Приватните својства не се наследуваат. Но потомокот може да манипулира со нив преку јавните методи на родителот. Ајде да видиме како тоа функционира во пракса. Да претпоставиме дека имаме следнава родителска класа со приватно својство и негов гетер и сетер:
class User {
#name;
setName(name) {
this.#name = name;
}
getName() {
return this.#name;
}
}
Да претпоставиме дека од родителот наследува следниов потомок:
class Student extends User {
}
Да креираме објект од потомокот:
let student = new Student;
Да го искористиме методот на родителот за да ја запишеме неговата приватна својство:
student.setName('john');
Да го искористиме методот на родителот за да ја прочитаме неговата приватна својство:
let name = student.getName();
console.log(name);
Дадена е следнава родителска класа:
class User {
#name;
#surn;
setName(name) {
this.#name = name;
}
getName() {
return this.#name;
}
setSurn(surn) {
this.#surn = surn;
}
getSurn() {
return this.#surn;
}
}
Направете класа Employee,
која ќе наследува
од овој родител.
Создајте објект од класата Employee
и повикајте ги наследуваните
сетери и гетери.
Во класата Employee направете
следниов метод:
getFull() {
return this.#name + ' ' + this.#surn;
}
Проверете дали кодот на методот ќе резултира со грешка.