na task sobre código encapsulado fiquei na duvida do por que o setSaldo não poder ser usado, já que na aula temos atributos private sendo usado o set também.
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
na task sobre código encapsulado fiquei na duvida do por que o setSaldo não poder ser usado, já que na aula temos atributos private sendo usado o set também.
Kennia, boa tarde.
No meu singelo conhecimento, normalmente atributos muito sensiveis como saldo por mais que estão privados, eles não devem ter um valor atribuido diretamente pelo o setSaldo, e uma boa pratica você inicializar o valor do atributo diretamente pelo construtor e atualizar o valor da variavel atráves de metodos que contem uma regra de negocio.
Até porque você imagina que, já foi setado o valor do saldo através do construtor não faz sentido você ter um metodo setSaldo para possivelmente atualiza-ló depois.
Bom dia, Kennia,
Contribuindo um pouco mais com o que o Maxuel falou, como a classe de Conta já possui um método público deposita(double valor) com a responsabilidade de manipular o saldo do cliente. É uma boa prática concentrarmos qualquer lógica de manipulação de saldo em um método só, e o outro ponto é que semanticamente, quando visualizamos métodos setters, acreditamos, em um primeiro momento, que haverá a atribuição de um valor a uma variável privada ou protegida de instância. Tipo assim: Fazer um depósito(double saldo) nos fala mais sobre o que o método vai fazer do que o método setSaldo(double saldo).