Sobrecarga do método Java
Sobrecarga do método
Com a sobrecarga de métodos, vários métodos podem ter o mesmo nome com parâmetros diferentes:
Exemplo
int myMethod(int x)
float myMethod(float x)
double myMethod(double x, double y)
Considere o exemplo a seguir, que tem dois métodos que adicionam números de tipos diferentes:
Exemplo
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);
}
Em vez de definir dois métodos que devem fazer a mesma coisa, é melhor sobrecarregar um.
No exemplo abaixo, sobrecarregamos o plusMethod
método para funcionar tanto para int
e double
:
Exemplo
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);
}
Nota: Vários métodos podem ter o mesmo nome, desde que o número e/ou tipo de parâmetros sejam diferentes.