⊗tsSpOpAMPrt 11 of 37 menu

TypeScript-тегі protected модификаторы

Приваттік қасиеттер мен әдістер мұрагерлерге берілмейді. Кейде, бізге қасиет немесе әдіс сырттан қол жетімді болмауы керек, бірақ мұрагерлерде болуы керек. Бұл жағдайда protected модификаторын қолдану керек.

Тәжірибеде көрейік. User сыныбымызда cape әдісін protected модификаторымен қорғалған деп жариялайық:

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

User сыныбынан мұраға алған Student сыныбын жасайық:

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

Атын шығаратын әдісті қосамыз:

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

Енді әке әдісінің қорғалған әдісін мұрагер әдісінің ішінде қолданайық:

class Student extends User { private name: string; constructor(name: string) { super(); this.name = name; } public showName(): string { return this.cape(this.name); // әке әдісін қолдану } }

Сыныбымыздың нысанын жасайық:

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

Студентті шығару үшін әдісті қолданайық:

console.log(student.showName());

Ал cape әдісін сырттан шақыруға тырысу қатеге әкеледі:

console.log(student.cape('test')); // қате

Мына сынып берілген:

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

Осы сыныптан Employee сыныбын мұраға алыңыз, ол қорғалған salary қасиетін қосады, сондай-ақ өздерінің де, мұраға алынғандардың да барлық қасиеттерінің геттерін қосады.

Қазақ
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართული한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Біз сайттың жұмысы, аналитика және персонализация үшін cookie файлдарын қолданамыз. Деректерді өңдеу Құпиялылық саясаты бойынша жүреді.
барлығын қабылдау баптау қабылдамау