⊗jsOpIhCOM 32 of 60 menu

Oproep van 'n oorheersde metode in OOP in JavaScript

Met oorheersing verloor die nakoming toegang tot die oorheersde metode van die ouer. Tog kan dit steeds verkry word. Dit word gedoen met die sleutelwoord super, wat na die ouerklas verwys.

Laat ons kyk na 'n voorbeeld wanneer ons toegang tot die ouermetode nodig mag hê. Gestel ons het die volgende ouerklas:

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

Gestel ons het die metode van die ouer in die kindklas oorheers:

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

Daar kan opgelet word dat in die oorheersde metode, wanneer die voorwaarde nagekom word, in werklikheid die kode van die ouermetode uitgevoer word. Dit lei tot onnodige kode duplisering.

Dit kan verwyder word deur die metode van die ouer te roep. Laat ons dit doen:

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

Gegee die volgende kode:

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'); } } }

In die klas Employee, regstel en vereenvoudig die ouderdom steller deur die oorspronklike metode van die ouer te gebruik.

Afrikaans
Azə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
Ons gebruik koekies vir die werking van die webwerf, ontleding en personalisering. Die verwerking van data geskied volgens die Privaatheidsbeleid.
aanvaar alles instel verwerp