Sobrecarga de Métodos y Constructores en Java
Clase 10 de 38 • Curso de Java SE Orientado a Objetos
Resumen
A veces necesitamos que dos o más métodos de una misma clase tengan el mismo nombre, pero con diferentes argumentos o distintos tipos de argumentos/valores de retorno.
Afortunadamente, Java nos permite ejecutar código y métodos diferentes dependiendo de los argumentos que reciba nuestra clase.
public class Calculadora {
// Los dos parámetros y el valor de retorno son de tipo int
public int suma(int a, int b) {
return a + b;
}
// Los dos parámetros y el valor de retorno son de tipo float
public float suma(float a, float b) {
return a + b;
}
// Un parámetro es de tipo int, mientras que el otro parámetro
// y el valor de retorno son de tipo float
public float suma(int a, float b) {
return a + b;
}
}
El uso más común de la sobrecarga de métodos es la sobrecarga de constructores para instanciar objetos de formas distintas dependiendo de la cantidad de argumentos que enviamos.
public class Doctor {
static int id = 0;
String name;
String speciality;
public Doctor() {
this.name = "Nombre por defecto";
this.speciality = "Especialidad por defecto";
}
public Doctor(String name, String speciality) {
this.name = name;
this.speciality = speciality;
}
}