Private Eigenschaften in OOP in JavaScript

Objekteigenschaften, die von außen gelesen und geschrieben werden können, werden als öffentliche Eigenschaften bezeichnet. Es gibt auch private Eigenschaften, die nur innerhalb der Klasse zugänglich sind.

Die Namen privater Eigenschaften müssen mit dem Symbol # beginnen. Darüber hinaus müssen solche Eigenschaften unbedingt am Anfang des Klassen-Codes deklariert werden. Lassen Sie uns das tun:

javascriptclass User {
  #name;
}

Schreiben wir nun Daten in unsere Eigenschaft. Dies kann beispielsweise im Konstruktor der Klasse erfolgen:

javascriptclass User {
  #name;
  
  constructor(name) {
    this.#name = name;
  }
}

Erstellen wir nun eine Methode, die den Wert unserer Eigenschaft zurückgibt:

javascriptclass User {
  #name;
  
  constructor(name) {
    this.#name = name;
  }
  
  show() {
    return this.#name;
  }
}

Erstellen wir ein Objekt der Klasse, indem wir den Namen des Benutzers als Parameter übergeben:

javascriptlet user = new User('john');

Der Versuch, direkt von außerhalb der Klasse auf unsere Eigenschaft zuzugreifen, führt zu einem Fehler:

javascriptconsole.log(user.#name); // Fehler

Der Aufruf unserer Methode ermöglicht es, diese Eigenschaft zu lesen:

javascriptconsole.log(user.show()); // gibt 'john' aus
Задание 1

Erstellen Sie in der Klasse Employee drei private Eigenschaften: Name, Gehalt und Alter.

Задание 2

Übergeben Sie die Werte dieser Eigenschaften als Parameter an den Konstruktor.

Задание 3

Erstellen Sie eine Methode, die die Daten des Mitarbeiters ausgibt.