🟣 OOP · Lesson 20
Polymorphism
Polymorphism क्या है?
Polymorphism का मतलब है "कई रूप"। Java में यह एक ही method नाम को object या arguments के हिसाब से अलग व्यवहार करने देता है। यह OOP के चार स्तंभों में से एक है और code को flexible बनाता है।
💡 मतलब
Poly = कई, morph = रूप। एक ही action (जैसे draw()) अलग-अलग shapes के लिए कई रूप लेता है।
Polymorphism के दो प्रकार
| प्रकार | दूसरा नाम | कैसे |
|---|---|---|
| Compile-time | Method Overloading | एक ही नाम, अलग parameters — compiler तय करता है। |
| Runtime | Method Overriding | Child class parent method दोबारा define करे — runtime पर तय। |
1) Overloading
Java
int add(int a, int b) { return a + b; } double add(double a, double b) { return a + b; }
▶ Output
add(2,3) → 5 add(2.5,1.5) → 4.0
2) Overriding
Java
class Cat extends Animal { void sound() { System.out.println("Meow"); } } Animal a = new Cat(); a.sound();
▶ Output
Meow
क्यों उपयोगी है
- General code लिखें जो कई specific types के लिए काम करे।
- नई subclasses जोड़ें बिना पुराना code बदले।
- साफ़ APIs — एक नाम, कई काम।
⚠️ Overloading vs Overriding
Overloading = एक ही class, अलग parameters (compile-time)। Overriding = parent और child, एक ही signature (runtime)।
सारांश
- Polymorphism = एक नाम, कई रूप।
- Compile-time (overloading) और runtime (overriding)।
- Code को flexible, reusable और extend करने में आसान बनाता है।
💻 लाइव कोड एडिटर
इस पेज के प्रोग्राम यहीं तैयार हैं — चलाएँ, बदलें और सीखें। कुछ भी इंस्टॉल किए बिना।
OneCompiler द्वारा संचालित। कोड एडिटर में अपने आप आ जाता है — Run दबाकर आउटपुट देखें। अगर एडिटर न खुले तो नए टैब में खोलें.
