Модификатор private в TypeScript

Модификатор private применяется в тех случаях, когда нужно закрыть доступ к свойствам и методам снаружи класса. При этом даже в классах-потомках нельзя будет обратиться к данным свойствам.

Давайте посмотрим на примере. Сделаем в классе User приватное свойство name:

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

Создадим объект класса, передав в конструктор значение нашего свойства:

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

Теперь попытка прочитать данное приватное свойство вне класса приведет к ошибке:

typescriptconsole.log(user.name); // ошибка

Также к ошибке приведет и попытка записать что-то в это свойство снаружи класса:

typescriptuser.name = 'eric'; // ошибка

А вот внутри методов класса можно будет как читать, так и изменять значение нашего приватного свойства:

typescriptclass User {
  private name: string;
  
  constructor(name: string) {
    this.name = name;
  }
  
  public getName() {
    return this.name; // прочитаем свойство
  }
  
  public setName(name: string) {
    this.name = name; // запишем новое значение свойства
  }
}
Задание 1

Сделайте класс User, содержащий приватные свойства с именем и возрастом. Пусть их начальные значения задаются через конструктор.

Задание 2

В вашем классе User сделайте публичные методы getName и getAge, позволяющие получить значения соответствующих приватных свойств.

Задание 3

В вашем классе User сделайте публичные методы setName и setAge, позволяющие изменить значения соответствующих приватных свойств.