Class Inheritance
وراثت یعنی یک کلاس (فرزند) میتونه خصوصیات و متدهای یک کلاس دیگه (والد) رو به ارث ببره و در صورت نیاز تغییر (Override) بده.
در جاوااسکریپت برای وراثت از کلمه کلیدی extends
استفاده میکنیم.
1️⃣ وراثت ساده
👉 Dog
متدهای کلاس Animal
رو هم به ارث میبره.
2️⃣ استفاده از super
در Constructor
وقتی کلاس فرزند constructor
خودش رو تعریف میکنه، باید اول super()
رو صدا بزنه تا سازندهی والد اجرا بشه.
3️⃣ Override متدها
میتونیم متد پدر رو بازنویسی کنیم:
4️⃣ صدا زدن متد والد با super
اگه بخوایم هم متد والد اجرا بشه هم متد فرزند:
5️⃣ Chain وراثت (چند سطحی)
وراثت میتونه چند سطح داشته باشه:
6️⃣ Static Methods هم به ارث میرسن
📌 خلاصه
-
برای وراثت از
extends
استفاده میکنیم. -
سازندهی فرزند باید اول
super()
رو صدا بزنه. -
متدها رو میتونیم Override کنیم.
-
با
super.method()
میشه متد والد رو داخل فرزند صدا زد. -
وراثت چندسطحی هم امکانپذیره.