Modificador private em TypeScript

O modificador private é aplicado em casos em que é necessário restringir o acesso a propriedades e métodos de fora da classe. Neste caso, mesmo em classes descendentes não será possível acessar tais propriedades.

Vamos ver um exemplo. Vamos criar uma propriedade privada name na classe User:

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

Vamos criar um objeto da classe, passando para o construtor o valor da nossa propriedade:

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

Agora, a tentativa de ler esta propriedade privada fora da classe resultará em um erro:

typescriptconsole.log(user.name); // erro

A tentativa de atribuir algo a esta propriedade de fora da classe também resultará em erro:

typescriptuser.name = 'eric'; // erro

No entanto, dentro dos métodos da classe será possível tanto ler quanto alterar o valor da nossa propriedade privada:

typescriptclass User {
  private name: string;
  
  constructor(name: string) {
    this.name = name;
  }
  
  public getName() {
    return this.name; // lê a propriedade
  }
  
  public setName(name: string) {
    this.name = name; // define um novo valor para a propriedade
  }
}
Задание 1

Crie uma classe User contendo propriedades privadas para nome e idade. Que seus valores iniciais sejam definidos pelo construtor.

Задание 2

Na sua classe User, crie métodos públicos getName e getAge, que permitam obter os valores das respectivas propriedades privadas.

Задание 3

Na sua classe User, crie métodos públicos setName e setAge, que permitam alterar os valores das respectivas propriedades privadas.