ExpertiDict

TypeScript · Essencial · Português · Técnico

modificadores de acesso

/modʒifikaˈdoɾis dʒi aˈsɛsu/substantivo masculino

Palavras public, private e protected que controlam quem pode usar um membro de classe. A checagem acontece só na compilação e some no JavaScript gerado.

Onde usar

Em code review surge a pergunta 'isso precisa ser public?'. Private e protected documentam a API da classe, mas não protegem os dados de quem ignora o compilador.

Em código

class Conta {
  private saldo = 0;
  protected id = 1;
  public depositar(v: number) {
    this.saldo += v;
  }
}
// new Conta().saldo; // erro: private

Exemplos

Deixei o saldo private e só exponho o método depositar.

O modificador protected deixa a subclasse acessar, mas bloqueia quem está de fora.

Cuidado

O private do TypeScript não é privacidade real, pois o campo continua acessível em runtime; para isso existe o campo com #.

Sinônimos

access modifiers

Veja também

Todos os termos de TypeScript