Oi, eu gostaria de um exemplo simples de uma classe com mais de um construtor.
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Oi, eu gostaria de um exemplo simples de uma classe com mais de um construtor.
Oi Antonio!
Vamos imaginar uma classe Endereco onde queremos dar a chance de na hora da criação, a chance de quem está usando, passar o nome da rua e o bairro:
public class Endereco {
private String rua;
private String bairro;
public Endereco(String rua, String bairro) {
this.rua = rua;
this.bairro = bairro;
}
// getters e setters
}Agora é só criar o objeto:
main(...) {
Endereco ruaLegal = new Endereco("Rua Bacana", "Vila Mariana");
}Se quisermos também dar a opção de ser passado só o nome da rua, porque por exemplo querermos assumir o bairro como "centro" por padrão, é só adicionar um novo construtor:
public class Endereco {
private String rua;
private String bairro;
public Endereco(String rua, String bairro) {
this.rua = rua;
this.bairro = bairro;
}
public Endereco(String rua) {
this.rua = rua;
this.bairro = "Centro";
}
// getters e setters
}Agora quem for criar os objetos pode usar um ou outro, caso a rua seja no centro:
main(...) {
Endereco ruaLegal = new Endereco("Rua Bacana", "Vila Mariana");
Endereco ruaCentro = new Endereco("Rua do Centro");
}
Nossa!!! Já fiz isso várias vezes, mas na teoria minha cabeça não ligou as coisas. Obrigado.