Ιδιωτικές Ιδιότητες κατά την Κληρονομικότητα στην Αντικειμενοστραφή Προγραμματισμό στο JavaScript
Οι ιδιωτικές ιδιότητες δεν κληρονομούνται. Αλλά ένα παιδικό αντικείμενο μπορεί να τις χειριστεί μέσω των δημόσιων μεθόδων του γονέα. Ας δούμε πώς λειτουργεί αυτό στην πράξη. Ας υποθέσουμε ότι έχουμε την ακόλουθη γονική κλάση με μια ιδιωτική ιδιότητα και τους getters και setters της:
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
και καλέστε τους κληρονομημένους
setters και getters.
Στην κλάση Employee δημιουργήστε
την ακόλουθη μέθοδο:
getFull() {
return this.#name + ' ' + this.#surn;
}
Βεβαιωθείτε ότι ο κώδικας της μεθόδου οδηγεί σε σφάλμα.