⊗jsOpIhCn 33 of 60 menu

Konstruktor při dědění v OOP v JavaScriptu

Při dědění lze přepsat konstruktor rodiče. Podívejme se na příklad. Předpokládejme, že máme následující třídu rodiče:

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

Předpokládejme, že z rodičovské třídy dědí následující třída:

class Student extends User { }

Předpokládejme, že chceme v potomní třídě rozšířit konstruktor přidáním dodatečných parametrů:

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

V tomto případě musíme jako první řádek zavolat konstruktor rodiče pomocí super:

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

Příkaz super je v podstatě konstruktorem rodiče. Proto do něj předejme požadované parametry:

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

Nyní v potomkovi zapišme rok studia do vlastní vlastnosti potomka:

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

Vytvořme getter pro rok studia:

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

Předpokládejme, že třída Employee dědí z třídy User z této lekce.

Přepište v třídě Employee konstruktor rodiče přidáním parametru s věkem a platem.

Vytvořte gettery pro věk a plat.

Čeština
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяDanskDeutschΕλληνικά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
Používáme soubory cookie pro fungování webu, analýzu a personalizaci. Zpracování údajů probíhá v souladu s Zásadami ochrany osobních údajů.
přijmout vše přizpůsobit odmítnout