पाठ 30 / 40
extends से इनहेरिटेंस
extends और super से classes बढ़ाएँ, parent behaviour reuse करें और constructor नियम मानें।
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 इस नियम को सख़्ती से लागू करता है।