⊗tsSpOpAMPrt 11 of 37 menu

TypeScript-da protected modifikatori

Xususiy xususiyatlar va metodlar vorislik orqali o'tmaydi. Ba'zida, shunday bo'ladiki, biz xususiyat yoki metod tashqaridan kirish mumkin bo'lmasin, lekin voris tomonidan meros qilib olinishi kerak. Bunday hollarda protected modifikatoridan foydalanish kerak.

Keling, amalda sinab ko'raylik. User klassimizda cape metodini protected modifikatori yordamida himoyalangan qilib e'lon qilaylik:

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

User klasidan voris oladigan Student klasini yaratamiz:

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

Ismni chiqaradigan metod qo'shamiz:

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

Endi voris metodining ichida ota-klassning himoyalangan metodidan foydalanamiz:

class Student extends User { private name: string; constructor(name: string) { super(); this.name = name; } public showName(): string { return this.cape(this.name); // ota-klass metodidan foydalanamiz } }

Klassimizning ob'ektini yaratamiz:

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

Studentni chiqarish uchun metoddan foydalanamiz:

console.log(student.showName());

cape metodini klass tashqarisidan chaqirishga urinish esa xatolikka olib keladi:

console.log(student.cape('test')); // xatolik

Quyidagi klass berilgan:

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

Ushbu klasdan Employee klasini voris qiling, u himoyalangan salary xususiyatini qo'shsin, shuningdek, o'zining va meros qilib olingan barcha xususiyatlarning getterlarini qo'shsin.

Oʻzbek
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекTiếng Việt
Biz sayt ishlashi, tahlil qilish va shaxsiylashtirish uchun cookie-fayllardan foydalanamiz. Ma'lumotlarni qayta ishlash Maxfiylik siyosatiga muvofiq amalga oshiriladi.
hammasini qabul qilish sozlash rad etish