Konstruktor bei Vererbung in OOP in JavaScript

Bei der Vererbung kann der Konstruktor der Elternklasse überschrieben werden. Schauen wir uns ein Beispiel an. Nehmen wir an, wir haben die folgende Elternklasse:

javascriptclass User {
  constructor(name, surn) {
    this.name = name;
    this.surn = surn;
  }
  
  getName() {
    return this.name;
  }
  getSurn() {
    return this.surn;
  }
}

Nehmen wir an, von der Elternklasse erbt die folgende Klasse:

javascriptclass Student extends User {
  
}

Nehmen wir an, wir möchten im Kindklasse den Konstruktor erweitern, indem wir ihm zusätzliche Parameter hinzufügen:

javascriptclass Student extends User {
  constructor(name, surn, year) {
    
  }
}

In diesem Fall müssen wir unbedingt in der ersten Zeile den Konstruktor der Elternklasse mit super aufrufen:

javascriptclass Student extends User {
  constructor(name, surn, year) {
    super();
  }
}

Der Befehl super ist im Wesentlichen der Konstruktor der Elternklasse. Deshalb übergeben wir ihm die erforderlichen Parameter:

javascriptclass Student extends User {
  constructor(name, surn, year) {
    super(name, surn);
  }
}

Nun schreiben wir das Studienjahr in den Kindklasse in eine eigene Eigenschaft:

javascriptclass Student extends User {
  constructor(name, surn, year) {
    super(name, surn);
    this.year = year;
  }
}

Erstellen wir einen Getter für das Studienjahr:

javascriptclass Student extends User {
  constructor(name, surn, year) {
    super(name, surn);
    this.year = year;
  }
  
  getYear() {
    return this.year;
  }
}
Задание 1

Nehmen wir an, die Klasse Employee erbt von der Klasse User aus dieser Lektion.

Задание 2

Überschreiben Sie in der Klasse Employee den Konstruktor der Elternklasse, indem Sie ihm Parameter für Alter und Gehalt hinzufügen.

Задание 3

Erstellen Sie Getter für Alter und Gehalt.