Olá, Johnatan! Tudo bem?
O conceito de encapsulamento em Orientação a Objetos visa proteger os dados internos de uma classe, permitindo que eles sejam acessados e modificados apenas por métodos específicos.
No seu exemplo, a classe Conta
está encapsulada corretamente, exceto pelo método setSaldo
. A presença desse método permite que o saldo da conta seja alterado diretamente, o que pode comprometer a integridade dos dados. Por exemplo, alguém poderia definir um saldo negativo ou alterar o saldo sem seguir as regras de negócio estabelecidas nos métodos saca
e deposita
.
A alternativa correta é a D: "A classe não deveria ter o método setSaldo
". Isso porque, ao remover o método setSaldo
, você garante que o saldo só pode ser modificado através dos métodos deposita
e saca
, que contêm a lógica necessária para manter a consistência dos dados.
Dessa forma, o saldo só pode ser alterado de maneira controlada, preservando a integridade da classe.
Espero ter ajudado e bons estudos!
Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.