TypeScript-ում private մոդիֆիկատորը

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 հանրային մեթոդներ, որոնք թույլ են տալիս փոխել համապատասխան մասնավոր հատկությունների արժեքները: