⊗tsSpOpAMPrt 11 of 37 menu

ตัวแก้ไข protected ใน TypeScript

คุณสมบัติและเมธอดแบบส่วนตัวไม่ได้รับการสืบทอด โดยคลาสลูก บางครั้ง อย่างไรก็ตาม เราต้องการให้ คุณสมบัติหรือเมธอดไม่สามารถเข้าถึงได้จากภายนอก แต่ได้รับการสืบทอดโดยคลาสลูก ในกรณีนี้ ควรใช้ตัวแก้ไข protected

มาลองใช้ในทางปฏิบัติกัน ประกาศใน คลาส User ของเรา เมธอด cape เป็นแบบป้องกันโดยใช้ตัวแก้ไข protected:

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

สร้างคลาส Student ซึ่งสืบทอด จากคลาส User:

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
เราใช้คุกกี้สำหรับการทำงานของเว็บไซต์ การวิเคราะห์ และการปรับเนื้อหาให้เหมาะสมส่วนบุคคล การประมวลผลข้อมูลเกิดขึ้นตาม นโยบายความเป็นส่วนตัว.
ยอมรับทั้งหมด ปรับแต่ง ปฏิเสธ