Construtores

Os construtores são métodos especiais usados ​​para inicializar objetos quando eles são criados.

Um construtor tem o mesmo nome da classe e nenhum tipo de retorno:

class Pessoa {
   public Pessoa(){
      //corpo do construtor
   }
}

Construtor de defeito

O construtor de defeito é um construtor sem argumentos (ver exemplo acima). Se não criarmos nenhum construtor, o Java cria um construtor de defeito.

Sobrecarga (overloading) de construtores

Podemos definir vários construtores com diferentes listas de parâmetros:

public class Carro {
    String marca;
    String modelo;

    public Carro() {
        // construtor de defeito
    }

    public Carro(String marca) {
        this.marca = marca;
    }

    public Carro(String marca, String modelo) {
        this.marca = marca;
        this.modelo = modelo;
    }
}

Um construtor pode chamar outros construtores usando a palavra-reservada this:

public class Rectangulo {
    int comprimento;
    int largura;

    public Rectangle() {
        this(1, 1); // Chama o construtor com dois argumentos
    }

    public Rectangle(int size) {
        this(size, size); // Chama o construtor com dois argumentos
    }

    public Rectangle(int comprimento, int largura) {
        this.comprimento = comprimento;
        this.largura = largura;
    }
}