Модификаторот private во TypeScript
Модификаторот private се применува во
случаи кога треба да се забрани пристапот до
својствата и методите однадвор од класата. При
тоа дури и во класите-потомци нема да може да се
пристапи до овие својства.
Да погледнеме на пример. Да направиме во
класата User приватно својство
name:
class User {
private name: string;
constructor(name: string) {
this.name = name;
}
}
Да создадеме објект од класата, пренесувајќи во конструкторот вредност на нашето својство:
let user: User = new User('john');
Сега обидот за читање на ова приватно својство надвор од класата ќе доведе до грешка:
console.log(user.name); // грешка
Исто така, до грешка ќе доведе и обидот за запишување на нешто во ова својство надвор од класата:
user.name = 'eric'; // грешка
Но, внатре во методите на класата ќе може и да се чита и да се менува вредноста на нашето приватно својство:
class User {
private name: string;
constructor(name: string) {
this.name = name;
}
public getName() {
return this.name; // го читаме својството
}
public setName(name: string) {
this.name = name; // запишуваме нова вредност на својството
}
}
Направете класа User, која содржи
приватни својства со име и возраст.
Нека нивните почетни вредности се задаваат преку
конструктор.
Во вашата класа User направете јавни
методи getName и getAge,
кои овозможуваат да се добијат вредностите на соодветните
приватни својства.
Во вашата класа User направете јавни
методи setName и setAge,
кои овозможуваат да се променат вредностите на соодветните
приватни својства.