Модификаторот 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, кои овозможуваат да се променат вредностите на соодветните приватни својства.