Öröklés JavaScriptben

Az öröklés fontos fogalom az objektumorientált programozásban. A klasszikus öröklődésben az alaposztályból származó metódusok átmásolódnak a származtatott osztályba.

A JavaScriptben az öröklést a prototípus objektum használatával támogatjuk. Egyesek ezt “prototípusos öröklődésnek”, mások pedig “viselkedés delegálásnak” nevezik.

Lássuk, hogyan érhetjük el az örökléshez hasonló funkcionalitást JavaScriptben a prototípus objektum használatával.

Kezdjük a Person osztállyal, amely tartalmazza a FirstName & LastName tulajdonságot az alábbiak szerint.

A fenti példában a Person osztályt (függvényt) a FirstName & LastName tulajdonságokkal definiáltuk, és a getFullName módszert is hozzáadtuk a prototípus objektumához.

Most szeretnénk létrehozni egy Student osztályt, amely a Person osztályból örökli, hogy ne kelljen újra definiálnunk a FirstName, LastName és a getFullName() metódust a Student osztályban. A következő egy Student osztály, amely örökli a Person osztályt.

Felhívjuk a figyelmet arra, hogy a Student.prototype-t az újonnan létrehozott person objektumra állítottuk be. A new kulcsszó létrehozza a Person osztály egy objektumát, és a Person.prototype-ot is hozzárendeli az új objektum prototípus objektumához, majd végül az újonnan létrehozott objektumot hozzárendeli a Student.prototype objektumhoz. Opcionálisan a Person.prototype objektumot is hozzárendelheti a Student.prototype objektumhoz.

Most létrehozhatunk egy Student objektumot, amely a Person tulajdonságait és metódusait használja az alábbiak szerint.

Így tudjuk megvalósítani az öröklést JavaScriptben.