Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
2
respuestas

[Duda] porque el metodo public boolean saca(doouble valor) que esta sobrescrito no retorna un boolean?

el metodo que es de la clase CuentaCorriente saca retorna un valor double cuando el metodo es boolean porque ?Ingrese aquí la descripción de esta imagen para ayudar con la accesibilidad

2 respuestas

Hola Miguel, con respecto a tu duda:

El propósito del método saca es verificar si el retiro se pudo realizar o no, y devuelve true si el retiro se realiza exitosamente y false si no es posible.

Si vemos el método saca de la clase Cuenta:

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

y el método saca de la clase CuentaCorriente

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

Ambos métodos devuelven un valor booleano, reflejando si el retiro se pudo realizar o no.

Ahora cuando tienes una función booleana en Java, el valor de retorno true o false en sí mismo no se imprimirá automáticamente en la pantalla.

Para imprimir el resultado booleano (true o false) cuando se llama al método saca, puedes agregar una instrucción System.out.println() alrededor de la llamada al método, de la siguiente manera:

main:

System.out.println(micuenta.retirar(100));

consola:

true

. .

Ademas, si analizamos el método saca, vemos que: Si cumple con la condición el atributo saldo se modificara y lanzara true.

Si no cumple lanzara false y el atributo saldo no se modificara.

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

y lo que se imprima despues de llamar al método, es la manipulación de ese atributo.

Saludos

Muchas gracias ya quedo mi duda resuelta te agradezco tu tiempo

Saludos