1.3.2

Papel do construtor

O construtor existe principalmente para inicializar os campos de um objeto. É nele que o estado inicial da instância deve ser definido no momento da criação. Embora seja tecnicamente possível colocar qualquer código dentro de um construtor, seu uso deve ser focado na inicialização e validação do estado do objeto.

Exemplo conceitual

public class User {

    private String name;

    public User(String name) {
        this.name = name;
    }
}

Explicação linha a linha

public class User {

Declara a classe User.

private String name;

Declara um campo que representa o estado do objeto.

public User(String name) {

Declara o construtor, que será executado no momento da criação da instância.

this.name = name;

Inicializa o campo name com o valor fornecido como argumento.

}

Encerra o construtor.

}

Encerra a definição da classe.

Embora o construtor possa conter lógica adicional, como validações ou cálculos iniciais, colocar regras de negócio complexas nesse ponto pode dificultar testes e manutenção.