Sobes.tech
Junior — Middle

É possível capturar exceções que não estão explicitamente declaradas no código?

sobes.tech IA

Resposta da IA

Sim, em Java é possível capturar exceções que não estão explicitamente declaradas no código. Em Java, existem dois tipos de exceções:

  • Exceções verificadas (checked) — devem ser declaradas na assinatura do método usando throws ou tratadas num bloco try-catch.
  • Exceções não verificadas (unchecked) — são subclasses de RuntimeException e Error. Não precisam ser declaradas e podem ser capturadas, embora geralmente não sejam tratadas especificamente.

Por exemplo, pode-se capturar qualquer exceção com catch (Exception e), mesmo que ela não esteja declarada no método:

try {
    // código que pode lançar uma exceção
} catch (Exception e) {
    // tratamento de qualquer exceção
}

Dessa forma, é possível capturar qualquer exceção, mas para exceções verificadas, o compilador exige que sejam declaradas ou tratadas.