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)
2
respuestas

Me suma dos veces

Buenas tardes compañeros, espero me puedan apoyar, al estar siguiendo las clases y realizar los ejercicios para aprender, quedo mi código de la siguiente manera:

package mexBank;

public class Cuenta { //Atributos private double saldo; private double deposito; double sucursal; double numero; String titular;

//Constructores de la clase
public Cuenta (double saldo) {
    this.saldo = saldo;
}

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

public void setSaldo(double saldo) {
    this.saldo = saldo;
}


public void Deposito (double deposito) {
    this.deposito = deposito;
}

public double getDeposito() {
    return deposito;
}

public void setDeposito(double deposito) {
    this.deposito = deposito;
}



//Métodos

    
//Retorna valor

    public boolean retirar (double valor) {//Método retirar
        if (this.saldo >= valor) {//Si, este saldo es mayor o igual al valor se ejecuta el retiro
            this.saldo = this.saldo - valor;//Este saldo es igual a este saldo - valor (retiro)
            return true;//Si se ejecuto
        }else {
            return false;// Si no se ejecuto
        }
    }

}

Al momento de crear una clase declaro lo siguiente:

package mexBank;

public class cuentaAhorro extends Cuenta{

    //Constructores propios de la cuenta
    public cuentaAhorro (double saldo) {
        super (saldo);
    }
    
    //Métodos
    public static void main(String[] args) {
        Cuenta primerCuenta1 = new Cuenta(1200);
        //primerCuenta1.getSaldo();
        
        System.out.println("Su saldo actual es de: " + primerCuenta1.getSaldo());
        
        primerCuenta1.setDeposito(100);			
        System.out.println("Usted deposito la cantidad de: " + primerCuenta1.getDeposito());
        
        System.out.println("Su nuevo saldo es de: "+ primerCuenta1.getSaldo());
        primerCuenta1.retirar(500);
        System.out.println("Su nuevo saldo es de: "+ primerCuenta1.getSaldo());
    }

    
    

}

Mi pregunta y duda es, porque me vuelve a sumar el deposito realizado y como puedo modificar el código para que no me sume dos veces.

Les dejo el resultado de la operación:

Ingrese aquí la descripción de esta imagen para ayudar con la accesibilidad

2 respuestas
solución!

Hola Omar, ¡espero que estés bien!

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

Tu getSaldo siempre suma saldo al deposito, y después del getSaldo en la línea 21 el atributo deposito no fue zerado, entonces sí, él suma saldo otra vez al deposito (que sigue siendo 100).

¡Saludos y buenos estudios!

Gracias por el apoyo, código corregido.