जावा विधि ओवरलोडिंग
विधि ओवरलोडिंग
मेथड ओवरलोडिंग के साथ , कई मेथड्स का अलग-अलग पैरामीटर के साथ एक ही नाम हो सकता है:
उदाहरण
int myMethod(int x)
float myMethod(float x)
double myMethod(double x, double y)
निम्नलिखित उदाहरण पर विचार करें, जिसमें दो विधियाँ हैं जो विभिन्न प्रकार की संख्याओं को जोड़ती हैं:
उदाहरण
static int plusMethodInt(int x, int y) {
return x + y;
}
static double plusMethodDouble(double x, double y) {
return x + y;
}
public static void main(String[] args) {
int myNum1 = plusMethodInt(8, 5);
double myNum2 = plusMethodDouble(4.3, 6.26);
System.out.println("int: " + myNum1);
System.out.println("double: " + myNum2);
}
एक ही काम करने वाली दो विधियों को परिभाषित करने के बजाय, एक को अधिभारित करना बेहतर है।
नीचे दिए गए उदाहरण में, हम plusMethod
दोनों के लिए काम करने की विधि को अधिभारित करते हैं int
और double
:
उदाहरण
static int plusMethod(int x, int y) {
return x + y;
}
static double plusMethod(double x, double y) {
return x + y;
}
public static void main(String[] args) {
int myNum1 = plusMethod(8, 5);
double myNum2 = plusMethod(4.3, 6.26);
System.out.println("int: " + myNum1);
System.out.println("double: " + myNum2);
}
नोट: एकाधिक विधियों का एक ही नाम हो सकता है, जब तक कि संख्या और/या पैरामीटर के प्रकार भिन्न हों।