⊗jsOpIhCn 33 of 60 menu

Constructor bij overerving in OOP in JavaScript

Bij overerving is het mogelijk om de constructor van de ouder te overschrijven. Laten we een voorbeeld bekijken. Stel dat we de volgende ouderklasse hebben:

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

Stel dat de volgende klasse overerft van de ouderklasse:

class Student extends User { }

Stel dat we in de afstammingsklasse de constructor willen uitbreiden door er extra parameters aan toe te voegen:

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

In dit geval moeten we verplicht op de eerste regel de constructor van de ouder aanroepen via super:

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

De opdracht super is in wezen de constructor van de ouder. Laten we er de vereiste parameters aan doorgeven:

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

Laten we het studiejaar in de afstammeling opslaan in een eigen eigenschap van de afstammeling:

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

Laten we een getter maken voor het studiejaar:

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

Stel dat de klasse Employee overerft van de klasse User uit deze les.

Overschrijf in de klasse Employee de constructor van de ouder, en voeg er een parameter voor leeftijd en salaris aan toe.

Maak getters voor de leeftijd en het salaris.

Nederlands
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wij gebruiken cookies voor de werking van de site, analyse en personalisatie. De verwerking van gegevens gebeurt volgens het Privacybeleid.
alles accepteren aanpassen weigeren