Method Overriding– किसी भी object-oriented programming language में, Overriding एक ऐसी सुविधा है जो एक subclass or child class को एक ऐसी method का specific implementation provide करने की अनुमति देती है जो पहले से ही उसके super-classes or parent classes में से एक द्वारा provide की जाती है। जब किसी subclass में एक method का एक ही नाम, एक ही parameters or signature होता है, और एक ही type के रूप में super-class में एक method होती है, तो subclass में method को super-class में method को override करने के लिए कहा जाता है।
Method overriding करने का एक तरीका है जिससे java Run Time Polymorphism को achieve करता है। जिस method को execute किया जाता है उसका version उस object द्वारा determine किया जाएगा जो इसे invoke करने के लिए use किया जाता है। यदि method को invoke करने के लिए किसी parent class के object का use किया जाता है, तो parent class में version execute किया जाएगा, लेकिन यदि method का use करने के लिए subclass का कोई object use किया जाता है, तो child-class में version execute किया जाएगा। दूसरे शब्दों में, यह being object का type है जो यह refer करता है कि एक overridden method के किस version को execute किया जाएगा।
Example of Method Overriding:
class Parent {
void show()
{
System.out.println(“Parent’s show()”);
}
}
class Child extends Parent {
@Override
void show()
{
System.out.println(“Child’s show()”);
}
}
class Main {
public static void main(String[] args)
{
Parent obj1 = new Parent();
obj1.show();
Parent obj2 = new Child();
obj2.show();
}
}
Output:
Parent’s show()
Child’s show()
Usage of Java Method Overriding:
- Method overriding का use उस method के specific implementation को provide करने के लिए किया जाता है जो पहले से ही इसके superclass द्वारा provide की जाती है।
- Method overriding का use runtime polymorphism के लिए किया जाता है|
Rules for Java Method Overriding:
- Method का parent class के same name होना चाहिए|
- Method में parent class के same parameter होना चाहिए।
- IS-A relationship (inheritance) होना चाहिए।