Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Erro no uso de Type Cast

Olá amigos,

Estou com dificuldade em imprimir o resultado do código a seguir, provável erro no uso do Type Cast

package br.com.daviBank.teste;

import br.com.daviBank.modelo.*;

public class TesteArrayReferencias {

    public static void main(String[] args) {

        Conta [] contas = new Conta    [5];

        ContaPoupanca cc1 = new ContaPoupanca(23, 13, 0);

        contas[0] = cc1;

        ContaCorrente cc2 = new ContaCorrente(125, 152, 0);

        contas[1] = cc2;

        System.out.println(contas[1].getNumero());

        ContaPoupanca ref =(ContaPoupanca)contas[0];

        System.out.println(cc2.getNumero());
        System.out.println(ref.getNumero());





    }

}

O erro em questão é o ClassCastException na linha 23 do código.

2 respostas
solução!

Oi Davi, tudo bem?

Sua classe ContaPoupanca extends Conta?

package br.com.bytebank.banco.modelo;

public class ContaPoupanca extends Conta {
    public ContaPoupanca(int agencia, int numero) {
        super(agencia, numero);
    }

    @Override
    public void deposita(double valor) {
        super.saldo += valor;    
    }

    @Override
    public String toString() {
        return "ContaPoupanca, " + super.toString();
    }
}

Sim , ela estende.