Modifikator private u TypeScript-u

Modifikator private se primenjuje u slučajevima kada je potrebno zatvoriti pristup svojstvima i metodama spolja iz klase. Pri tome čak ni u klasama-naslednicima neće biti moguće pristupiti ovim svojstvima.

Pogledajmo na primeru. Napravimo u klasi User privatno svojstvo name:

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

Napravimo objekat klase, prosledivši konstruktoru vrednost našeg svojstva:

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

Sada će pokušaj čitanja ovog privatnog svojstva van klase dovesti do greške:

typescriptconsole.log(user.name); // greška

Takođe će do greške dovesti i pokušaj upisa nečega u ovo svojstvo spolja iz klase:

typescriptuser.name = 'eric'; // greška

Međutim, unutar metoda klase će biti moguće i čitati i menjati vrednost našeg privatnog svojstva:

typescriptclass User {
  private name: string;
  
  constructor(name: string) {
    this.name = name;
  }
  
  public getName() {
    return this.name; // pročitaćemo svojstvo
  }
  
  public setName(name: string) {
    this.name = name; // upisaćemo novu vrednost svojstva
  }
}
Задание 1

Napravite klasu User, koja sadrži privatna svojstva sa imenom i godinama. Neka se njihove početne vrednosti zadaju preko konstruktora.

Задание 2

U vašoj klasi User napravite javne metode getName i getAge, koji omogućavaju dobijanje vrednosti odgovarajućih privatnih svojstava.

Задание 3

U vašoj klasi User napravite javne metode setName i setAge, koji omogućavaju promenu vrednosti odgovarajućih privatnih svojstava.