Private Eigenschaften bei Vererbung in OOP in JavaScript

Private Eigenschaften werden nicht vererbt. Aber ein Nachkomme kann sie durch öffentliche Methoden des Elternteils manipulieren. Lasst uns das in der Praxis ansehen. Nehmen wir an, wir haben die folgende Elternklasse mit einer privaten Eigenschaft und ihrem Getter und Setter:

javascriptclass User {
  #name;
  
  setName(name) {
    this.#name = name;
  }
  getName() {
    return this.#name;
  }
}

Nehmen wir an, von der Elternklasse erbt der folgende Nachkomme:

javascriptclass Student extends User {
  
}

Erstellen wir ein Objekt des Nachkommen:

javascriptlet student = new Student;

Nutzen wir die Methode des Elternteils, um seine private Eigenschaft zu setzen:

javascriptstudent.setName('john');

Nutzen wir die Methode des Elternteils, um seine private Eigenschaft auszulesen:

javascriptlet name = student.getName();
console.log(name);
Задание 1

Gegeben ist die folgende Elternklasse:

javascriptclass User {
  #name;
  #surn;
  
  setName(name) {
    this.#name = name;
  }
  getName() {
    return this.#name;
  }
  
  setSurn(surn) {
    this.#surn = surn;
  }
  getSurn() {
    return this.#surn;
  }
}

Erstellen Sie die Klasse Employee, die von diesem Elternteil erben wird.

Задание 2

Erstellen Sie ein Objekt der Klasse Employee und rufen Sie die geerbten Setter und Getter auf.

Задание 3

Erstellen Sie in der Klasse Employee die folgende Methode:

javascriptgetFull() {
  return this.#name + ' ' + this.#surn;
}

Stellen Sie sicher, dass der Code der Methode zu einem Fehler führt.