⊗tsSpOpAMPrt 11 of 37 menu

Modifikator protected u TypeScript-u

Privatna svojstva i metode se ne nasleđuju od potomaka. Međutim, ponekad nam je potrebno da svojstvo ili metod ne budu dostupni spolja, ali da budu nasleđeni od potomaka. U ovom slučaju treba koristiti modifikator protected.

Hajde da isprobamo u praksi. Deklarišimo u našoj klasi User metod cape kao zaštićeni pomoću modifikatora protected:

class User { protected cape(str: string) { return str[0].toUpperCase() + str.slice(1); } }

Napravimo klasu Student, koja nasleđuje od klase User:

class Student extends User { private name: string; constructor(name: string) { super(); this.name = name; } }

Dodajmo metod koji ispisuje ime:

class Student extends User { private name: string; constructor(name: string) { super(); this.name = name; } public showName(): string { return this.name; } }

A sada upotrebimo zaštićeni metod roditelja unutar metoda potomka:

class Student extends User { private name: string; constructor(name: string) { super(); this.name = name; } public showName(): string { return this.cape(this.name); // koristimo metod roditelja } }

Kreirajmo objekat naše klase:

let student: Student = new Student('john');

Iskoristimo metod za ispis studenta:

console.log(student.showName());

Međutim, pokušaj da se pozove metod cape spolja klase će dovesti do greške:

console.log(student.cape('test')); // greška

Data je sledeća klasa:

class User { protected name: string; protected surn: string; constructor(name: string, surn: string) { this.name = name; this.surn = surn; } }

Nasledite od ove klase klasu Employee, koja će dodati zaštićeno svojstvo salary, kao i gettere svih svojstava, kako svojih, tako i nasleđenih.

Srpski
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Koristimo kolačiće za rad sajta, analitiku i personalizaciju. Obrada podataka se vrši u skladu sa Politikom privatnosti.
prihvati sve podesi odbij