⊗jsOpIhCn 33 of 60 menu

Costruttore nell'ereditarietà in OOP in JavaScript

Nell'ereditarietà è possibile sovrascrivere il costruttore del genitore. Osserviamo con un esempio. Supponiamo di avere la seguente classe genitore:

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

Supponiamo che dalla classe genitore erediti la seguente classe:

class Student extends User { }

Supponiamo di voler estendere il costruttore nella classe figlia, aggiungendo parametri aggiuntivi:

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

In questo caso dobbiamo obbligatoriamente richiamare il costruttore del genitore tramite super come prima istruzione:

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

Il comando super è essenzialmente il costruttore del genitore. Pertanto passiamogli i parametri richiesti:

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

Ora nel figlio assegniamo l'anno di corso in una proprietà propria del figlio:

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

Creiamo un getter per l'anno di corso:

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

Supponiamo che la classe Employee erediti dalla classe User di questa lezione.

Sovrascrivi nella classe Employee il costruttore del genitore, aggiungendovi un parametro per l'età e lo stipendio.

Crea i getter per l'età e lo stipendio.

Italiano
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesia日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Utilizziamo i cookie per il funzionamento del sito, l'analisi e la personalizzazione. I dati vengono elaborati in conformità con la Politica sulla privacy.
accetta tutto personalizza rifiuta