Inheritance in JavaScript
Inheritance is een belangrijk concept in object georiënteerd programmeren. In de klassieke overerving worden methoden uit de basisklasse gekopieerd naar de afgeleide klasse.
In JavaScript wordt overerving ondersteund door het gebruik van een prototype-object. Sommige mensen noemen het “Prototypal Inheriatance” en anderen noemen het “Behaviour Delegation”.
Laten we eens zien hoe we met behulp van het prototype-object een soort overerving kunnen bereiken in JavaScript.
Laten we beginnen met de klasse Person, die de eigenschap FirstName & LastName bevat, zoals hieronder is te zien.
In het bovenstaande voorbeeld hebben we de klasse Person gedefinieerd (functie) met FirstName & LastName eigenschappen en ook de methode getFullName aan zijn prototype-object toegevoegd.
Nu willen we een Studentenklasse maken die van de Persoonlijkheidsklasse erft, zodat we de Voornaam, Achternaam en de methode getVolledigeNaam() niet opnieuw hoeven te definiëren in de Studentenklasse. Het volgende is een Student klasse die de Persoon klasse erft.
Merk op dat we Student.prototype hebben ingesteld op een nieuw aangemaakt persoonsobject. Het trefwoord new maakt een object van de klasse Person en wijst ook Person.prototype toe aan het prototype-object van het nieuwe object en wijst tenslotte het nieuw gemaakte object toe aan het object Student.prototype. Optioneel kunt u ook Person.prototype toewijzen aan Student.prototype-object.
Nu kunnen we een object van Student maken dat eigenschappen en methoden van de Persoon gebruikt, zoals hieronder is weergegeven.
Dus kunnen we overerving implementeren in JavaScript.