English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
SobrecargaEs un mecanismo para implementar polimorfismo, donde una clase contiene dos métodos con el mismo nombre y diferentes parámetros.
Cada vez que se llama a este método, el cuerpo del método se basará en la asociación de parámetros con la llamada al método.
Al igual que con los métodos, también puede sobrecargar los constructores, es decir, puede escribir múltiples constructores con diferentes parámetros.
Además, basado en los parámetros pasados durante la instanciación, se llamará al constructor correspondiente.
public class Sample{ public Sample(){ System.out.println("Hello how are you"); } public Sample(String data){ System.out.println(data); } public static void main(String args[]){ Sample obj = new Sample("Tutorialspoint"); } }
Resultado de salida
Tutorialspoint
Al igual que con los constructores comunes, también puede sobrecargar el constructor de la enumeración. Es decir, puede hacer que el constructor tenga diferentes parámetros.
El siguiente programa Java muestra la sobrecarga de constructores en la enumeración.
import java.util.Arrays; enum Student { Krishna("Krishna", "kasyap", "Bhagavatula"), Ravi("Ravi", "Kumar", "pyda"), Archana("Archana", "devraj", "mohonthy"); private String firstName; private String lastName; private String middleName; private Student(String firstName, String lastName, String middlename){ this.firstName = firstName; this.lastName = lastName; this.middleName = middleName; } private Student(String name) { this(name.split(" ")[0], name.split(" ")[1], name.split(" ")[2]); } } public class ConstructorOverloading{ public static void main(String args[]) { Student stds[] = Student.values(); System.out.println(Arrays.toString(stds)); } }
Resultado de salida
[Krishna, Ravi, Archana]