Amigos,
Qual o benefício de se tratar o erro ? Pergunto isso pois um simples if poderia informar ao usuário que o valor que ele esta depositando é incorreto. Mas como sugestão do exercício, retorno um IllegalArgumentException.
public void deposita(double valor){
if(valor < 0){
throw new IllegalArgumentException();
}else{
this.saldo += valor;
System.out.println("Valor depositado: " + valor);
}
}
public void deposita(double valor){
if(valor < 0){
System.out.println("Valor depositado inválido");
}else{
this.saldo += valor;
System.out.println("Valor depositado: " + valor);
}
}
Imagino que o benefício seja quando temos um sistema muito grande, bastante complexo onde a execução onera o ambiente e leva mais tempo. Desta forma, tratando o erro, você finaliza a execução do código especificando o erro. E não deixa o código correr certo ?