Modyfikator private w TypeScript

Modyfikator private jest stosowany w przypadkach, gdy trzeba zamknąć dostęp do właściwości i metod na zewnątrz klasy. Przy czym nawet w klasach-dziedzicach nie będzie można odwołać się do tych właściwości.

Spójrzmy na przykład. Stwórzmy w klasie User prywatną właściwość name:

typescriptclass User {
  private name: string;
  
  constructor(name: string) {
    this.name = name;
  }
}

Stwórzmy obiekt klasy, przekazując do konstruktora wartość naszej właściwości:

typescriptlet user: User = new User('john');

Teraz próba odczytania tej prywatnej właściwości poza klasą doprowadzi do błędu:

typescriptconsole.log(user.name); // błąd

Również do błędu doprowadzi i próba zapisania czegoś do tej właściwości na zewnątrz klasy:

typescriptuser.name = 'eric'; // błąd

A wewnątrz metod klasy będzie można zarówno odczytywać, jak i zmieniać wartość naszej prywatnej właściwości:

typescriptclass User {
  private name: string;
  
  constructor(name: string) {
    this.name = name;
  }
  
  public getName() {
    return this.name; // odczytamy właściwość
  }
  
  public setName(name: string) {
    this.name = name; // zapiszemy nową wartość właściwości
  }
}
Задание 1

Stwórz klasę User, zawierającą prywatne właściwości z imieniem i wiekiem. Niech ich początkowe wartości będą ustawiane przez konstruktor.

Задание 2

W twojej klasie User stwórz publiczne metody getName i getAge, pozwalające uzyskać wartości odpowiednich prywatnych właściwości.

Задание 3

W twojej klasie User stwórz publiczne metody setName i setAge, pozwalające zmienić wartości odpowiednich prywatnych właściwości.