⊗jsOpIhCOM 32 of 60 menu

OOP-də JavaScript-də override edilmiş metodun çağırılması

Override etdikdə, nəsildə valideynin override edilmiş metoduna çıxış itir. Lakin, buna çıxışı yenə də əldə etmək olar. Bu, valideyn sinifini göstərən super açar sözü vasitəsilə edilir.

Gəlin nümunə ilə baxaq, nə vaxt valideyn metoduna çıxışımız ola bilər. Tutaq ki, aşağıdakı valideyn sinifimiz var:

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

Tutaq ki, biz nəsil sinifdə valideyn metodunu override etdik:

class Student extends User { setName(name) { if (name.length > 0) { this.name = name; } else { throw new Error('student name error'); } } }

Qeyd etmək olar ki, override edilmiş metoddda şərt yerinə yetirildikdə, əslində valideyn metodunun kodu icra olunur. Bu, lazımsız kod təkrarlanması ilə nəticələnir.

Valideyn metodunu çağıraraq bundan qurtulmaq olar. Gəlin bunu edək:

class Student extends User { setName(name) { if (name.length > 0) { super.setName(name); // valideyn metodu } else { throw new Error('student name error'); } } }

Aşağıdakı kod verilmişdir:

class User { setAge(age) { if (age >= 0) { this.age = age; } else { throw new Error('need age more 0'); } } } class Employee { setAge(age) { if (age <= 120) { if (age >= 0) { this.age = age; } else { throw new Error('need age more 0'); } } else { throw new Error('need age less 120'); } } }

Employee sinfində yaş setterini valideynin orijinal metodundan istifadə edərək sadələşdirin.

Azərbaycan
AfrikaansБългарскиবাংলাБеларускаяČ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
Biz saytin işi, analitika və fərdiləşdirmə üçün cookie istifadə edirik. Məlumatların emalı Məxfilik Siyasəti əsasında həyata keçirilir.
hamısını qəbul et konfiqurasiya et rədd et