Προστατευμένες Ιδιότητες στην OOP στην JavaScript
Εισάγουμε επίσης και προστατευμένες ιδιότητες. Θα ξεκινάμε επίσης τα ονόματά τους με υπογράμμιση. Ας δούμε ένα παράδειγμα. Ας φτιάξουμε μια γονική κλάση με μια προστατευμένη ιδιότητα, που περιέχει την ηλικία:
javascriptclass User {
setAge(age) {
this._age = age;
}
getAge() {
return this._age;
}
}
Στην παράγωγη κλάση ας φτιάξουμε μια μέθοδο, που αυξάνει την ηλικία κατά μία μονάδα:
javascriptclass Student extends User {
incAge() {
this._age++;
}
}
Задание 1
Ξαναγράψτε τον ακόλουθο κώδικα χρησιμοποιώντας προστατευμένη ιδιότητα:
javascriptclass User {
#name;
setName(name) {
this.#name = name;
}
getName() {
return this.#name;
}
}
class Employee extends User {
setName(name) {
if (name.length > 0) {
this.#name = name;
}
}
}