Quando eu irei saber se uma classe de Exceção será checked ou unchecked? Só se o compilador exigir a assinatura: throws + nomedaExceção? Ou tem algum outro motivo?
Quando eu irei saber se uma classe de Exceção será checked ou unchecked? Só se o compilador exigir a assinatura: throws + nomedaExceção? Ou tem algum outro motivo?
Oi, Dayvid, como vai?
As exceções unchecked ocorrem em tempo de execução, ou seja, elas só vão ocorrer no momento em que você colocar seu programa para executar e no geral esses erros são irrecuperáveis, como por exemplo um NullPointerException. A forma de garantir que exceções unchecked são sejam lançadas é escrever bem, analisar bem e testar o código desenvolvido.
Já as exceções checked ocorrem em tempo de compilação, ou seja, o programa não consegue nem ser executado se não houver o tratamento correto das possíveis exceções checked que podem ser lançadas. As IDEs mostram quando é preciso tratar uma exceção checked em algum ponto do código, então é possível saber os problemas antes mesmo da compilação do código.
Espero ter ajudado.
Abraços e bons estudos!