Surcharge de méthode Java
Surcharge de méthode
Avec la surcharge de méthodes, plusieurs méthodes peuvent avoir le même nom avec des paramètres différents :
Exemple
int myMethod(int x)
float myMethod(float x)
double myMethod(double x, double y)
Prenons l'exemple suivant, qui comporte deux méthodes qui additionnent des nombres de types différents :
Exemple
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);
}
Au lieu de définir deux méthodes qui doivent faire la même chose, il vaut mieux en surcharger une.
Dans l'exemple ci-dessous, nous surchargeons la plusMethod
méthode pour qu'elle fonctionne à la fois pour int
et double
:
Exemple
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);
}
Remarque : plusieurs méthodes peuvent avoir le même nom tant que le nombre et/ou le type de paramètres sont différents.