Sobrecarga do construtor em Java
O que รฉ sobrecarga de construtor em Java?
Java A sobrecarga de construtor รฉ uma tรฉcnica na qual uma classe pode ter qualquer nรบmero de construtores que diferem na lista de parรขmetros. O compilador diferencia esses construtores levando em consideraรงรฃo o nรบmero de parรขmetros na lista e seu tipo.
Exemplos de construtores vรกlidos para a classe Account sรฃo
Account(int a); Account (int a,int b); Account (String a,int b);
Exemplo 2: Para entender a sobrecarga do construtor em Java
Passo 1) Digite o cรณdigo no editor.
class Demo{
int value1;
int value2;
/*Demo(){
value1 = 10;
value2 = 20;
System.out.println("Inside 1st Constructor");
}*/
Demo(int a){
value1 = a;
System.out.println("Inside 2nd Constructor");
}
Demo(int a,int b){
value1 = a;
value2 = b;
System.out.println("Inside 3rd Constructor");
}
public void display(){
System.out.println("Value1 === "+value1);
System.out.println("Value2 === "+value2);
}
public static void main(String args[]){
Demo d1 = new Demo();
Demo d2 = new Demo(30);
Demo d3 = new Demo(30,40);
d1.display();
d2.display();
d3.display();
}
}
Passo 2) Salve, compile e execute o cรณdigo.
Passo 3) Erro = ?. Tente depurar o erro antes de prosseguir para a prรณxima etapa do Java sobrecarga do construtor
Passo 4) Cada classe tem um padrรฃo Construtor em Java. Construtor sobrecarregado padrรฃo Java pela aula de demonstraรงรฃo is Demonstraรงรฃo(). Caso vocรช nรฃo forneรงa este construtor, o compilador o cria para vocรช e inicializa as variรกveis โโcom os valores padrรฃo. Vocรช pode optar por substituir esse construtor padrรฃo e inicializar as variรกveis โโcom os valores desejados, conforme mostrado no Exemplo 1.
Mas se vocรช especificar um construtor parametrizado como Demo(int a) e quiser usar o construtor padrรฃo Java Demo(), รฉ obrigatรณrio especificรก-lo.
Em outras palavras, caso seu construtor de sobrecarga em Java รฉ substituรญdo e vocรช deseja usar o construtor padrรฃo Java, รฉ necessรกrio especificรก-lo.
Passo 5) Remova o comentรกrio da linha 4-8. Salve, compile e execute o cรณdigo.
Por que precisamos de sobrecarga de construtor em Java?
Sobrecarga do construtor em Java permite mรบltiplos construtores em uma classe, cada um tendo listas de parรขmetros diferentes. Ele aumenta a flexibilidade e melhora a eficiรชncia do cรณdigo.
- Flexibilidade na criaรงรฃo de objetos: A sobrecarga do construtor permite inicializar objetos de vรกrias maneiras, dependendo do nรบmero ou tipo de parรขmetros.
- Reutilizaรงรฃo de cรณdigo: Vocรช pode reutilizar a lรณgica do construtor chamando um construtor de outro usando a palavra-chave this().
- Legibilidade aprimorada: Construtores sobrecarregados ajudam a tornar o cรณdigo mais intuitivo, oferecendo opรงรตes de construtor especรญficas para diferentes necessidades de inicializaรงรฃo.
- Inicializaรงรฃo padrรฃo e personalizada: A sobrecarga do construtor permite que vocรช crie objetos padrรฃo e personalizados facilmente.
