Modifikátor private v TypeScript

Modifikátor private sa používa v prípadoch, keď je potrebné obmedziť prístup k vlastnostiam a metódam zvonku triedy. Pri tom ani v odvodených triedach nebude možné pristupovať k týmto vlastnostiam.

Pozrime sa na príklad. Vytvorme v triede User súkromnú vlastnosť name:

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

Vytvorme objekt triedy, pričom do konštruktora odovzdáme hodnotu našej vlastnosti:

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

Teraz pokus o čítanie tejto súkromnej vlastnosti mimo triedy spôsobí chybu:

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

Chybu spôsobí aj pokus o zápis do tejto vlastnosti zvonku triedy:

typescriptuser.name = 'eric'; // chyba

Naopak, vo vnútri metód triedy bude možné čítať aj meniť hodnotu našej súkromnej vlastnosti:

typescriptclass User {
  private name: string;
  
  constructor(name: string) {
    this.name = name;
  }
  
  public getName() {
    return this.name; // prečítame vlastnosť
  }
  
  public setName(name: string) {
    this.name = name; // zapíšeme novú hodnotu vlastnosti
  }
}
Задание 1

Vytvorte triedu User, ktorá obsahuje súkromné vlastnosti s menom a vekom. Nech sú ich počiatočné hodnoty nastavené prostredníctvom konštruktora.

Задание 2

Vo vašej triede User vytvorte verejné metódy getName a getAge, ktoré umožňujú získať hodnoty príslušných súkromných vlastností.

Задание 3

Vo vašej triede User vytvorte verejné metódy setName a setAge, ktoré umožňujú zmeniť hodnoty príslušných súkromných vlastností.