Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Solucionado (ver solución)
Solucionado
(ver solución)
1
respuesta

No cobra la comision por transferencia!!!

Buenas tengo un problema:

public class CuentaCorriente extends Cuenta {

public CuentaCorriente(int agencia, int numero){
    super(agencia,numero); //Este super llama al metodo constructor de su clase padre
}

//Este metodo esta siendo sobrescrito de la clase padre...
@Override
public boolean retirar(double valor) {
    double comision = 0.2;
    return super.retirar(valor + comision);
}

}

Metodo Main

public class TestCuenta { public static void main(String[] args) { CuentaCorriente cc = new CuentaCorriente(1, 1); CuentaAhorros ca = new CuentaAhorros(2, 3);

    cc.depositar(2000);
    cc.transferir(1000, ca);

    System.out.println(cc.getSaldo());
    System.out.println(ca.getSaldo());
}

}

en el saldo de cc deberia cobrarle el 0.2, pero no lo hace y no encuentro el problema, gracias si alguien logra ayudarme!!

1 respuesta
solución!

¡Hola Estudante!

En el método retirar de la clase CuentaCorriente, estás sumando el valor de la comisión al valor que se va a retirar, pero en el método transferir no estás haciendo lo mismo.

Para solucionar esto, debes agregar la comisión al valor que se va a transferir en el método transferir de la clase CuentaCorriente:

@Override
public void transferir(double valor, Cuenta cuentaDestino) {
    double comision = 0.2;
    boolean retirada = this.retirar(valor + comision);
    if (retirada) {
        cuentaDestino.depositar(valor);
    }
}

Espero que esto te ayude a solucionar tu problema. ¡Buenos estudios!