1
resposta

Dúvida

Mas se eu tirar o setSaldo, como vou saber qual o saldo inicial da conta? Como será colocado o valor do saldo inicial?

Garanta sua matrícula hoje e ganhe + 2 meses grátis

Continue sua jornada tech com ainda mais tempo para aprender e evoluir

Quero aproveitar agora
1 resposta

Oi, Lucas! Tudo bem?

Quando trabalhamos com encapsulamento, a ideia é proteger o estado interno do objeto, evitando que ele seja alterado de maneira inadequada.

Para definir o saldo inicial de forma segura, uma prática comum é utilizar um construtor na classe Conta. Dessa forma, você pode definir o saldo inicial no momento da criação do objeto, garantindo que ele seja configurado apenas uma vez, de forma controlada. Veja um exemplo de como você poderia fazer isso:

public class Conta {
    private int numero;
    private int agencia;
    private double saldo;

    // Construtor para definir o saldo inicial
    public Conta(int numero, int agencia, double saldoInicial) {
        this.numero = numero;
        this.agencia = agencia;
        this.saldo = saldoInicial;
    }

    public void deposita(double valor) {
        saldo += valor;
    }

    public void saca(double valor) {
        if (valor <= saldo) {
            saldo -= valor;
        } else {
            System.out.println("Saldo insuficiente.");
        }
    }

    public int getNumero() {
        return numero;
    }

    public int getAgencia() {
        return agencia;
    }

    public double getSaldo() {
        return saldo;
    }
}

Com esse construtor, ao criar uma nova instância de Conta, você pode definir o saldo inicial, por exemplo:

Conta minhaConta = new Conta(1234, 5678, 1000.0);

Assim, você garante que o saldo inicial é definido apenas uma vez e de maneira controlada, respeitando o princípio do encapsulamento.

Espero ter ajudado e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.