Na aula de construtores vimos que os atributos são inicializados com um valor default, porém percebi que o instrutor usa somente o this para fazer a atribuição aos valores inicializados, acessando o atributo de forma direta, conforme código abaixo:
public class Conta {
private double saldo;
private int agencia;
private int numero;
private Cliente titular;
private static int total = 0;
public Conta(int agencia, int numero){
Conta.total++;
System.out.println("O total de contas é " + Conta.total);
this.agencia = agencia;
this.numero = numero;
this.saldo = 100;
System.out.println("Estou criando uma conta" + this.numero);
}
}
no momento em que estamos construindo um objeto, onde temos os construtores, não seria melhor usarmos os métodos setters dentro do próprio construtor, pois as vezes precisamos fazer certas validações para o atributo poder receber valores válidos.
outra dúvida, qual a diferença entre fazer validações dentro do contrutor e dentro dos setters, para validar os atributos? Existem casos onde seja melhor fazer validações em um do que em outro, pois se usarmos os setters dentro dos construtores, já poderíamos fazer as validações somente dentro dos setters, este pensamento está correto?
Valeu, abraços!!