पाठ 29 / 38
extends से इनहेरिटेंस
एक क्लास के ऊपर दूसरी क्लास बनाना, और parent को कॉल करना।
extends और super
extends किसी subclass को parent से जोड़ता है; super.method() override के अंदर से parent का वर्ज़न बुलाता है।
class Animal {
constructor(name) { this.name = name; }
speak() { return `${this.name} makes a sound.`; }
}
class Dog extends Animal {
speak() {
return `${super.speak()} Specifically, a bark!`;
}
}
console.log(new Dog("Rex").speak());इनहेरिट क्यों करें
extends किसी subclass को parent के व्यवहार को दोहराने के बजाय पुनः-उपयोग और विस्तार करने देता है — पुनः-उपयोग की मूल OOP सोच।
super() पहले आना चाहिए
किसी subclass constructor में, this उपयोग करने से पहले super(...) बुलाएँ — JS इस नियम को सख़्ती से लागू करता है।