In TypeScript, welcher Zugriffsmodifikator macht Mitglieder nur innerhalb ihrer deklarierenden Klasse zugänglich?

Verständnis des Zugriffsmodifikators 'Privat' in TypeScript

In TypeScript, einem typisierten Überbau von JavaScript, werden Zugriffsmodifikatoren verwendet, um den Zugriff auf Klassenmitglieder zu steuern. Diese Modifikatoren sind Schlüsselwörter, die vor den Namen der Mitglieder platziert werden, um deren Sichtbarkeit festzulegen.

Im Kontext der Frage ist der korrekte Zugriffsmodifikator "Privat", der Mitglieder der Klasse ausschließlich für die Klasse sichtbar macht, in der sie deklariert sind. Das bedeutet, dass private Variablen oder Methoden nur von Methoden der gleichen Klasse aufgerufen oder manipuliert werden können.

Betrachten Sie zum Beispiel folgenden TypeScript-Code:

class Tiere {
  private name: string;
  
  constructor(name: string) {
    this.name = name;
  }
  
  public getName(): string {
    return this.name;
  }
}

In dieser Klasse Tiere ist name ein privates Mitglied. Es kann nur innerhalb der Klasse Tiere aufgerufen werden, zum Beispiel in der Methode getName(). Wenn Sie versuchen, auf das private Mitglied außerhalb der Klasse zuzugreifen, wird TypeScript einen Fehler ausgeben.

let katze = new Tiere('Miau');
console.log(katze.name); // Error: 'name' ist privat und nur in der Klasse 'Tiere' zugänglich.

Aber wenn Sie die öffentliche Methode verwenden, um auf das private Mitglied zuzugreifen, funktioniert es:

let katze = new Tiere('Miau');
console.log(katze.getName()); // 'Miau'

Es ist wichtig, den 'privaten' Zugriffsmodifikator zu verwenden, um die Datenintegrität zu gewährleisten und eine unkontrollierte Manipulation von Klassenmitgliedern zu verhindern. Dies ist ein grundlegender Grundsatz der objektorientierten Programmierung, der als Kapselung bekannt ist. Mit dieser Technik können wir den internen Zustand eines Objekts verstecken und den Zugang über Methoden steuern.

Neben "privat" gibt es in TypeScript auch andere Zugriffsmodifikatoren wie "öffentlich" und "geschützt". Das Fehlen eines Zugriffsmodifikators impliziert den öffentlichen Zugang, was bedeutet, dass das Mitglied überall zugänglich ist. Der Zugriffsmodifikator "geschützt" ähnelt "privat", ermöglicht jedoch den Zugriff in abgeleiteten Klassen.

Es ist immer eine gute Praxis, den Zugriff auf Klassenmitglieder angemessen zu beschränken, und TypeScript bietet die Mittel, dies effektiv zu tun.

Related Questions

Finden Sie das nützlich?