⊗jsOpIhCn 33 of 60 menu

Konstruktor ved arv i OOP i JavaScript

Ved arv kan man overskrive forælderens konstruktor. Lad os se på et eksempel. Lad os sige, at vi har følgende forældreklasse:

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

Lad den følgende klasse arve fra forældreklassen:

class Student extends User { }

Lad os sige, at vi i barnklassen vil udvide konstruktøren ved at tilføje yderligere parametre til den:

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

I dette tilfælde er vi obligatorisk nødt til at kalde forælderens konstruktor via super på første linje:

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

Kommandoen super er i bund og grund forælderens konstruktor. Derfor lad os videregive de nødvendige parametre til den:

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

Nu i barnet skal studieåret skrives i barnets egen egenskab:

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

Lad os lave en getter for studieåret:

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

Lad klassen Employee arve fra klassen User fra denne lektion.

Overskriv i klassen Employee forælderens konstruktor ved at tilføje en parameter med alder og løn.

Lav gettere for alder og lon.

Dansk
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDeutschΕλληνικά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
Vi bruger cookies til webstedets funktion, analyse og personalisering. Behandling af data foregår i henhold til Fortrolighedspolitikken.
accepter alle tilpas afvis