Sobes.tech
Junior — Middle

Explique o conceito de hierarquia de exceções na linguagem Java e como ela é aplicada no tratamento de erros.

sobes.tech IA

Resposta da IA

Em Java, a hierarquia de exceções é construída a partir da classe base Throwable, que tem duas subclasses principais: Error e Exception.

  • Error — erros graves que geralmente não são tratados pela aplicação (por exemplo, OutOfMemoryError).
  • Exception — exceções que podem e devem ser tratadas.

Por sua vez, Exception divide-se em:

  • Exceções verificadas (Checked exceptions) — requerem tratamento obrigatório ou declaração no método (IOException, SQLException).
  • Exceções não verificadas (Unchecked exceptions) — herdam de RuntimeException, e não é obrigatório tratá-las (NullPointerException, IllegalArgumentException).

Para tratar erros, usa-se o bloco try-catch, onde se podem capturar exceções em diferentes níveis da hierarquia. Por exemplo, pode-se capturar uma exceção específica ou uma mais geral para garantir flexibilidade e segurança no código.

try {
    // código que pode lançar uma exceção
} catch (IOException e) {
    // tratamento de uma exceção específica
} catch (Exception e) {
    // tratamento de todas as outras exceções
}