⊗jsOpIhPrP 35 of 60 menu

პრივატული თვისებები მემკვიდრეობითობისას OOP-ში JavaScript-ში

პრივატული თვისებები არ გადაეცემა მემკვიდრეობით. მაგრამ შთამომავალს შეუძლია მათზე ზემოქმედება მშობლის საჯარო მეთოდების მეშვეობით. პრაქტიკაში ვნახოთ. მოდით, გვაქვს შემდეგი მშობელი კლასი პრივატული თვისებით და მისი გეთერით და სეთერით:

class User { #name; setName(name) { this.#name = name; } getName() { return this.#name; } }

მოდით, მშობლისგან მემკვიდრეობით მიიღებს შემდეგი შთამომავალი:

class Student extends User { }

შევქმნათ შთამომავლის ობიექტი:

let student = new Student;

გამოვიყენოთ მშობლის მეთოდი, რათა ჩავწეროთ მისი პრივატული თვისება:

student.setName('john');

გამოვიყენოთ მშობლის მეთოდი, რათა წავიკითხოთ მისი პრივატული თვისება:

let name = student.getName(); console.log(name);

მოცემულია შემდეგი მშობელი კლასი:

class User { #name; #surn; setName(name) { this.#name = name; } getName() { return this.#name; } setSurn(surn) { this.#surn = surn; } getSurn() { return this.#surn; } }

გააკეთეთ კლასი Employee, რომელიც მემკვიდრეობით მიიღებს ამ მშობლისგან.

შექმენით Employee კლასის ობიექტი და გამოიძახეთ მემკვიდრეობით მიღებული სეთერები და გეთერები.

Employee კლასში გააკეთეთ შემდეგი მეთოდი:

getFull() { return this.#name + ' ' + this.#surn; }

დარწმუნდით, რომ მეთოდის კოდი გამოიწვევს შეცდომას.

ქართული
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
ვებსაიტის მუშაობის, ანალიტიკისა და პერსონალიზაციისთვის ვიყენებთ ქუქი-ფაილებს. მონაცემთა დამუშავება ხდება Კონფიდენციალურობის პოლიტიკის შესაბამისად.
ყველას მიღება პარამეტრები უარყოფა