Beskyttede egenskaper i OOP i JavaScript
La oss også introdusere beskyttede egenskaper. Vi vil også starte deres navn med understrek. La oss se på et eksempel. La oss lage en forelderklasse med en beskyttet egenskap som inneholder alder:
class User {
setAge(age) {
this._age = age;
}
getAge() {
return this._age;
}
}
I barneklassen lager vi en metode som øker alderen med en:
class Student extends User {
incAge() {
this._age++;
}
}
Skriv om følgende kode ved hjelp av en beskyttet egenskap:
class User {
#name;
setName(name) {
this.#name = name;
}
getName() {
return this.#name;
}
}
class Employee extends User {
setName(name) {
if (name.length > 0) {
this.#name = name;
}
}
}