Модификатор private in TypeScript
Der Modifizierer private wird in
den Fällen verwendet, in denen der Zugriff auf
Eigenschaften und Methoden von außerhalb der Klasse
gesperrt werden soll. Dabei kann selbst in
abgeleiteten Klassen nicht auf diese
Eigenschaften zugegriffen werden.
Schauen wir uns ein Beispiel an. Erstellen wir in
der Klasse User eine private Eigenschaft
name:
class User {
private name: string;
constructor(name: string) {
this.name = name;
}
}
Erstellen wir ein Objekt der Klasse, indem wir dem Konstruktor den Wert unserer Eigenschaft übergeben:
let user: User = new User('john');
Nun führt der Versuch, diese private Eigenschaft außerhalb der Klasse auszulesen, zu einem Fehler:
console.log(user.name); // Fehler
Ebenso führt der Versuch, diesem Eigenschaft von außerhalb der Klasse etwas zuzuweisen, zu einem Fehler:
user.name = 'eric'; // Fehler
Innerhalb der Methoden der Klasse kann jedoch sowohl der Wert unserer privaten Eigenschaft ausgelesen als auch geändert werden:
class User {
private name: string;
constructor(name: string) {
this.name = name;
}
public getName() {
return this.name; // Eigenschaft auslesen
}
public setName(name: string) {
this.name = name; // Neuen Wert für die Eigenschaft setzen
}
}
Erstellen Sie eine Klasse User, die
private Eigenschaften für Name und Alter enthält.
Deren Anfangswerte sollen über den Konstruktor
gesetzt werden.
Erstellen Sie in Ihrer Klasse User öffentliche
Methoden getName und getAge,
die es erlauben, die Werte der entsprechenden
privaten Eigenschaften abzurufen.
Erstellen Sie in Ihrer Klasse User öffentliche
Methoden setName und setAge,
die es erlauben, die Werte der entsprechenden
privaten Eigenschaften zu ändern.