Encapsulamento
Em aplicações bancárias reais, o saldo de uma conta não pode ser alterado diretamente por qualquer parte do sistema — isso causaria inconsistências e fraudes. Por isso, usamos campos privados e métodos públicos para controlar cada operação. Dominar encapsulamento permite proteger dados e garantir que regras de negócio, como não permitir saques acima do saldo, sejam aplicadas.
O PROBLEMA
ContaBancaria com saldo private, depositar() e getSaldo().
EXEMPLO
depositar(500).getSaldo() → 1500
SOBRE O CONCEITO
O encapsulamento é implementado com o modificador private nos campos, como private double saldo, impedindo acesso direto de fora da classe. Para interagir com o saldo, você cria métodos públicos, como depositar(double valor) e getSaldo(). O erro comum de tentar conta.saldo = 500 gera um erro de compilação porque o campo é privado. Isso força o desenvolvedor a passar por métodos que podem validar a operação, garantindo controle. No construtor, use this.saldo = saldoInicial para inicializar. Lembre-se: métodos void não retornam valor, e return é usado no getter para devolver o saldo.
RESOLUÇÃO