Uma boa prática na hora de criar os construtores de uma classe, é reaproveitar os setters dos atributos para manter a validação.
Imagine que temos a classe Carro, com seus respectivos setters:
Perceba que temos uma validação no método setAno(int ano), que impede que o usuário defina um ano menor que 0 (negativo) e maior que 2025.
Agora vamos criar o construtor para a classe:
Criando o construtor desse jeito, podemos instanciar a classe passando os seguintes parâmetros:
Perceba que podemos passar o valor negativo como parâmetro do construtor, e isso é válido, já que o construtor não possui validação, apenas o setter do ano setAno(int ano).
Parra corrigir isso, é só chamarmos os setters no construtor, para manter a validação: