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

erro classe SaldoInsuficienteException

Minha Classe SaldoInsuficienteException fica sublinhada em amarelo e o codigo não compila. Aparece a mensagem : Exception in thread "main" java.lang.Error: Unresolved compilation problem: The type java.io.ObjectInputStream cannot be resolved. It is indirectly referenced from required .class files

at SaldoInsuficienteException.(SaldoInsuficienteException.java:1) at Conta.saca(Conta.java:21) at ContaCorrente.saca(ContaCorrente.java:1) at TestaContas.main(TestaContas.java:9)

Tentei usar o SupressWarnings, mas ficou em erro. Gerar serial, a mesma coisa

Abaixo Codigo:

public class SaldoInsuficienteException extends RuntimeException {

    private final double saldoAtual;

    public SaldoInsuficienteException(double saldoAtual){
            super("O Saldo é insuficiente" + saldoAtual);
            this.saldoAtual = saldoAtual;
    }

    public double getSaldoAtual() {
        return saldoAtual;
    }
}
public class TestaContas {

    public static void main(String[] args) {

                Conta joao = new ContaCorrente();
                joao.deposita(50.0);

                try{
                joao.saca(100.0);
                }
                catch(Exception e){
                    System.out.println(e.getMessage());

                }



                System.out.println(joao.getSaldo());
            }

    }
abstract class Conta {
    protected double saldo;

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

    public double getSaldo() {
        return saldo;
    }

    public void deposita(double valor) {
        this.saldo += valor;
    }

    public void saca(double valor) throws Exception  {
            if(saldo >= valor){
            this.saldo -= valor;
        }else{
            throw new SaldoInsuficienteException(saldo);
        }
    }

    public abstract void atualiza(double taxa);

}
public class ContaCorrente extends Conta implements Tributavel{
    public void atualiza(double taxa) {
        this.saldo += this.saldo * taxa*2;
    }

    public void deposita(double valor) {
        this.saldo += valor;
    }

    public double calculaTributos() {
        return this.getSaldo()*0.01;
    }

}
3 respostas
solução!

Oi Antonio, tudo bem?

A classe estar sublinhada em amarelo é devido ao fato de não ter um serial ID. Clica em cima do nome da classe e aperta Ctrl + 1, isso vai mostrar opções para resolver o warning. Agora quanto ao erro, eu copiei suas classes aqui em um novo projeto e não tive esse erro. Tenta dar um clean no seu projeto e roda o main de novo.

Qualquer coisa, manda aqui =)

Atualizei a versõ do eclipe e utilizei @supresswarnings("serial"); fiz o clean, e deu certo. Obrigado