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

Quando usar Exception e RuntimeException ?

Caso eu for criar uma exception qualquer, quando devo extender de Exception ou RuntimeException ? pode dar exemplos de cenários para as duas ?

2 respostas
solução!

RuntimeException são exceções que podem ser evitadas fazendo uma verificação antes.

Ex.:NullPointerException: se você fizer um if variavel == null, dá para evitá-la.

Um outro exemplo, digamos que você tenha um sistema bancário com um método "sacar".Nela você poderia jogar uma exceção SaldoInsuficienteException que estende RuntimeException caso o saldo seja insuficiente. Ela poderia ser evitada checando o saldo do usuário antes de invocar o sacar.

Já Exception são exceções que não tem como evitar. Ex.: SQLException: você não tem como estar 100% seguro de que não vai dar problema na conexão com o banco de dados, por isso é essencial fazer catch para tomar uma atitude.