Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
1
respuesta

com.bytebank.modelo.CuentaCorriente@123a439b se imprime en consola al ejecutar

Hola,

Escribo porque me llama la atencion que al momento de ejecutar este codigo

package com.bytebank.test;

import com.bytebank.modelo.CuentaCorriente;

public class TestArreglosReferencias {
    public static void main(String[] args) {
        CuentaCorriente cc = new CuentaCorriente(23,44);

        CuentaCorriente[] cuentas = new CuentaCorriente[5];
        cuentas[1] = cc;
        System.out.println(cc);
    }
}

Me regresa en consola:

Estoy creando una cuenta Numero: 44, Agencia: 23 com.bytebank.modelo.CuentaCorriente@123a439b

Les comparto el codigo de mi clase cuenta y cuentaCorriente:

package com.bytebank.modelo;

/**
 * Cuenta va a crear nuevas instancias de CuentaCorriente
 * 
 * @version 1.0
 * @author Javier Fernandeza
 *
 */
public abstract class Cuenta {
    protected double saldo;
    private int agencia;
    private int numero;
    private Cliente titular = new Cliente();

    private static int total;

    /**
     * Instancia una nueva cuenta sin parametros
     */
    public Cuenta() {

    }

    /**
     * Instancia una cuenta usando agencia y numero
     * @param agencia
     * @param numero
     */
    public Cuenta(int agencia, int numero) {
        this.agencia = agencia;
        this.setNumero(numero);
        System.out.println("Estoy creando una cuenta");
        System.out.println("Numero: " + numero + ", " + "Agencia: "+ agencia);
        Cuenta.total++;
    }

    public abstract void depositar(double valor);

    /**
     * Este metodo retira dinero de la cuenta y si ocurre un error
     * devuelve una excepcion
     * @param valor
     * @throws SaldoInsuficienteException
     */
    public void retirar(double valor) throws SaldoInsuficienteException {
        if (this.saldo < valor) {
            throw new SaldoInsuficienteException("No tienes saldo suficiente");
        }
        this.saldo -= valor;

    }

    public boolean transferir(double valor, Cuenta cuenta) {
        if (this.saldo >= valor) {
            try {
                this.retirar(valor);
            } catch (SaldoInsuficienteException e) {
                e.printStackTrace();
            }
            cuenta.depositar(valor);
            return true;
        } else {
            return false;
        }
    }

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

    public int getAgencia() {
        return agencia;
    }

    public void setTitular(Cliente titular) {
        this.titular = titular;
    }

    public Cliente getTitular() {
        return titular;
    }

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

    public int getNumero() {
        return numero;
    }

    public void setNumero(int numero) {
        if (numero > 0) {
            this.numero = numero;
        }
    }
}
package com.bytebank.modelo;

public class CuentaCorriente extends Cuenta implements Tributacion {

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

    @Override
    public void retirar(double valor) throws SaldoInsuficienteException {
        // TODO Auto-generated method stub
        double comision = 0.2;
        super.retirar(valor+comision);
    }

    @Override
    public void depositar(double valor) {
        // TODO Auto-generated method stub
        super.saldo = super.saldo + valor;

    }

    @Override
    public double getValorImpuesto() {
        return super.saldo * 0.01;
    }

}
1 respuesta

Hola Javier, espero que estés bien! Gracias por compartir tu código con nosotros. Si tiene alguna pregunta sobre el contenido del curso, estamos aquí para ayudarlo. ¡Sigue practicando! ¡Vamos juntos! :)

Si este post te ayudó, por favor, marca como solucionado ✓.