Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Conta Corrente e Poupança

Meu código não esta retirando os vinte centavos de taxa de saque.

Alguém consegue ajudar?

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++;        
        this.agencia = agencia;
        this.numero = numero;
        //System.out.println("Conta " + this.numero + " criada");
        //System.out.println("O total de contas nesta agência é " + Conta.total);
    }

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

    public boolean saca(double valor) {
        if (this.saldo >= valor) {
            this.saldo -= valor;
            return true;
        } else {
            return false;
        }
    }

    public boolean transfere(double valor, Conta destino) {
        if (this.saldo >= valor) {
            this.saldo -= valor;
            destino.deposita(valor);
            return true;
        }
        return false;
    }

    public double getSaldo() {
        return this.saldo;
    }

    public int getNumero() {
        return this.numero;
    }

    public void setNumero(int numero) {
        if(numero <= 0) {
            System.out.println("Não é possível valores negativos");
            return;
        }
        this.numero = numero;
    }

    public int getAgencia() {
        return this.agencia;
    }

    public void setAgencia(int agencia) {
        if(agencia <= 0) {
            System.out.println("Não é possível valores negativos");
            return;
        }
        this.agencia = agencia;
    }
    public void setTitular(Cliente titular) {
        this.titular = titular;
    }

    public Cliente getTitular() {
        return titular;
    }

    public static int getTotal() {
        return Conta.total;
    }

}
public class ContaCorrente extends Conta {

        public ContaCorrente(int agencia, int numero) {
            super(agencia, numero);
        }

        @Override
        public boolean saca(double valor) {
            double valorASacar = valor + 0.2;
            return super.saca(valorASacar);
        }
}
public class TesteConta {

        public static void main(String[] args) {

            ContaCorrente cc = new ContaCorrente(111, 111);
            cc.deposita(100.0);

            ContaPoupanca cp = new ContaPoupanca(222, 222);
            cp.deposita(200.0);

            cc. transfere(10.0, cp);

        System.out.println("CC: " + cc.getSaldo());
        System.out.println("CP: " + cp.getSaldo());


    }

}

Obrigado

1 resposta
solução!

Desconsiderar, resolvido.

O problema estava no método transfere.