Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Dúvida] Chamar um segundo construtor, carrega suas funções dentro do {}?

Pelo que entendi, ao setar um construtor, podemos dar suas principais funções dentro dos colchetes, exemplo:

public Carro(int ano, String modelo, double preco) {
        if(ano >= 1891){
            this.ano = ano;
        }else{
            System.out.println("O ano informado está inválido. Por isso usaremos 2017!");
            this.ano = 2017;
        }

        if( modelo != null){
            this.modelo = modelo;
        }else{
            System.out.println("O modelo não foi informado. Por isso usaremos Gol!");
            this.modelo = "Gol";
        }

        if(preco > 0){
            this.preco = preco;
        }else{
            System.out.println("O preço não é válido. Por isso usaremos 40000.0!");
            this.preco = 40000.0;
        }        

Quando chamo um construtor apenas através do this(2017, modelo, preco); estou chamando automaticamente os colchetes acima de forma oculta?

1 resposta
solução!

Fala Thiago, tudo certo?

Perfeito, quando chamamos um construtor dentro de outro em uma classe, fazemos sua chamada através da referência this(), e pela sobrecarga de métodos, sabemos que um construtor se difere do outro justamente pelos parâmetros recebidos. Quando executamos o trecho de código this(2017, modelo, preco);, a partir de outro construtor, estamos sim executando o código dentro do construtor com a assinatura Carro(int ano, String modelo, double preco).

Em caso de dúvidas estou à disposição.

Um grande abraço e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!