Acredito que o código da classe SaldoInsuficienteException
está escrito errado. Não deveria ser assim:
public class SaldoInsuficienteException extends RuntimeException{
private final double saldoAtual;
public SaldoInsuficienteException(double saldoAtual) {
super("Saldo insuficiente " + saldoAtual);
this.saldoAtual = saldoAtual;
}
public double getSaldoAtual() {
return saldoAtual;
}
}
Outra coisa: não entendi essa parte do código super("Saldo insuficiente " + saldoAtual);
É uma chamada a um método da classe pai, no caso, RuntimeException
?