Геттеры аксессоров в ООП в JavaScript
Давайте подробнее разберем применение геттеров свойств-аксессоров. Пусть у нас есть следующий класс с приватным свойством:
class User {
#name;
constructor(name) {
this.#name = name;
}
}
Давайте сделаем в этом классе
публичное свойство name
,
которое можно будет прочитать,
но нельзя будет записать:
class User {
#name;
constructor(name) {
this.#name = name;
}
get name() {
return this.#name;
}
}
Проверим работу. Создадим объект нашего класса, передав ему параметром значение имени:
let user = new User('john');
А теперь прочитаем имя через публичное свойство:
let name = user.name;
console.log(name);
А вот попытка записать имя приведет к ошибке, как мы и добивались:
user.name = 'eric';
Реализуйте геттеры аксессоров для
свойств класса Employee
.