Modifieraren private i TypeScript
Modifieraren private används i
de fall när det är nödvändigt att stänga åtkomst till
egenskaper och metoder från utanför klassen. Vid
detta tillfälle kommer det inte att vara möjligt att
referera till dessa egenskaper, inte ens i underklasser.
Låt oss titta på ett exempel. Vi skapar en privat egenskap
name i klassen User:
class User {
private name: string;
constructor(name: string) {
this.name = name;
}
}
Låt oss skapa ett objekt av klassen, och skicka in i konstruktorn värdet för vår egenskap:
let user: User = new User('john');
Nu kommer ett försök att läsa denna privata egenskap utanför klassen att leda till ett fel:
console.log(user.name); // fel
Ett försök att skriva något till denna egenskap från utanför klassen kommer också att leda till ett fel:
user.name = 'eric'; // fel
Däremot, inuti klassens metoder kommer det att vara möjligt både att läsa och ändra värdet på vår privata egenskap:
class User {
private name: string;
constructor(name: string) {
this.name = name;
}
public getName() {
return this.name; // läser egenskapen
}
public setName(name: string) {
this.name = name; // skriver ett nytt värde till egenskapen
}
}
Skapa klassen User, som innehåller
privata egenskaper för namn och ålder.
Låt deras initiala värden sättas via
konstruktorn.
I din klass User, skapa publika
metoder getName och getAge,
som gör det möjligt att få värdena för motsvarande
privata egenskaper.
I din klass User, skapa publika
metoder setName och setAge,
som gör det möjligt att ändra värdena för motsvarande
privata egenskaper.