Sobre o tratamento de exceções em Java, é incorreto afirmar ...
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
Alternativa Correta: A
Tema central: O foco da questão é o tratamento de exceções em Java. Esse tema é fundamental em concursos porque envolve robustez do código, prevenção de falhas e domínio das estruturas try-catch-throw – essenciais para qualquer programador Java.
Resumo teórico: Em Java, exceções são usadas para tratar situações anormais durante a execução de um programa. O tratamento acontece em blocos try-catch. Também existe a cláusula throws, que informa que um método pode lançar certas exceções. Há dois tipos principais de exceções: verificadas (checadas em tempo de compilação) e não verificadas (subclasses de RuntimeException, checadas em tempo de execução). Fonte: Oracle Java Tutorials (https://docs.oracle.com/javase/tutorial/essential/exceptions/).
Justificativa da alternativa correta (A):
O erro está ao afirmar que o multi-catch (Java 7+) deve ser usado quando os corpos dos diferentes catch são distintos. Na verdade, o multi-catch só deve ser utilizado quando diferentes exceções serão tratadas da mesma forma! Se o tratamento for diferente, obrigatoriamente é necessário usar vários blocos catch separados, um para cada exceção.
Análise das alternativas incorretas:
B: Correta. Em Java, uma exceção não capturada em uma thread encerra apenas aquela thread. Se só houver uma thread, o programa termina.
C: Correta. A cláusula throws informa ao compilador e ao programador que o método pode lançar certas exceções, que podem ser originadas nele ou repassadas por métodos que ele invoca.
D: Correta. Todas as exceções que são subclasses (diretas ou indiretas) de RuntimeException são não verificadas (unchecked), geralmente resultantes de erros de programação, como acesso a índices inválidos de arrays.
Dicas para interpretar este tipo de questão:
Leia atentamente, destacando palavras como “incorreto” ou “exceto”. Fique atento à diferença entre exceções verificadas e não verificadas e em como as estruturas do Java funcionam. Cuidado com pegadinhas que trocam condições no uso de recursos como o multi-catch.
Gostou do comentário? Deixe sua avaliação aqui embaixo!
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo
Comentários
Veja os comentários dos nossos alunos
Erro de português na questão D faz com que ela seja incorreta. A oração entre vírgulas no início da alternativa da a entender que todas as exceções que existem são subclasses de Runtime e não que ele se refere as exceções que são subclasses. Se não tivesse a primeira vírgula, a afirmativa estava certa.
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo