Implementei o tratamento de erro na classe Conta no método deposita.
public void deposita(double valor) { if (valor < 0){ throw new IllegalArgumentException(); } else{ this.saldo += valor; } }
A classe ContaCorrente herda o método da Classe Conta e portanto o tratamento de erro é o mesmo. Entretanto a classe Poupanca sobreescreve o método deposita da Classe conta.
A melhor forma de aplicar o tratamento é repetir o código na Classe Poupança ou há alguma solução mais elegante em OO?