⊗jsOpIhCn 33 of 60 menu

Konstruktor pri dedovanju v OOP v JavaScriptu

Pri dedovanju je mogoče redefinirati konstruktor starša. Poglejmo si na primeru. Naj imamo naslednji razred starša:

class User { constructor(name, surn) { this.name = name; this.surn = surn; } getName() { return this.name; } getSurn() { return this.surn; } }

Naj od starševskega razreda deduje naslednji razred:

class Student extends User { }

Naj želimo v razredu-potomcu razširiti konstruktor, tako da mu dodamo dodatne parametre:

class Student extends User { constructor(name, surn, year) { } }

V tem primeru moramo obvezno v prvi vrstici poklicati konstruktor starša z super:

class Student extends User { constructor(name, surn, year) { super(); } }

Ukaz super je v bistvu konstruktor starša. Zato mu posredujemo zahtevane parametre:

class Student extends User { constructor(name, surn, year) { super(name, surn); } }

Zdaj v potomcu leto študija zapišimo v lastno lastnost potomca:

class Student extends User { constructor(name, surn, year) { super(name, surn); this.year = year; } }

Naredimo getter za leto študija:

class Student extends User { constructor(name, surn, year) { super(name, surn); this.year = year; } getYear() { return this.year; } }

Naj razred Employee deduje od razreda User iz te lekcije.

Redefinirajte v razredu Employee konstruktor starša, tako da mu dodate parameter s starostjo in plačo.

Naredite getterje za starost in plačo.

Slovenščina
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Za delovanje spletnega mesta, analitiko in personalizacijo uporabljamo piškotke. Obdelava podatkov poteka v skladu s Politiko zasebnosti.
sprejmi vse nastavi zavrni