Tratamento de Exceções parte 01

Qual programador nunca se deparou com erros em código e teve de manipular esses erros de forma trabalhosa, complexa e muitas vezes comprometendo a inteligibilidade do código? A linguagem Java fornece um mecanismo de tratamento de erros que permite ao desenvolvedor a produção de códigos eficientes e inteligíveis: o tratamento de exceções.

Na primeira parte desse artigo irei abordar de forma sucinta como funciona o tratamento de exceções em Java, como manipular, criar e lançar.

O que é?

É uma ocorrência que altera o fluxo normal de um programa, algo que foge do fluxo padrão.

A estrutura básica para o tratamento de uma exceção é formada pelas seguintes palavras-chave:

  • try – É usado para inserir um código que possa causar alguma exceção.
  • catch – Manipula a exceção.
  • finally – Sempre será executado, independente do que acontecer  dentro do bloco try-catch.

Ex.:

try{

Coloque aqui código que poderá resultar em algum erro.

}catch(Exceção e){

Coloque aqui código que manipula a exceção.

}finally{

Coloque aqui código que sempre será executado independente do que ocorra dentro do bloco try-catch-finally.

}

Existem dois tipos de exceções: verificadas e não verificadas, vejamos a árvore de herança das exceções e depois analisaremos e diferenciaremos seus tipos.

Hierarquia de exceções

Throwable é a classe pai de todas as Exceções, e dela saem duas subclasses principais “Error” e “Exception”. As classes derivadas de Error significam erros que não ocorrem normalmente e que não são causadas por erros de lógica no programa, e sim por problemas externos como falta de memória, geralmente não são manipulados. As exceções são derivadas da classe Exception. Existem dois tipos de exceções, as verificadas e não verificadas. Todas as subclasses de RuntimeException (incluindo ela mesma) são consideradas exceções não verificadas, ou seja, mesmo se você declarar uma RuntimeException em seu código, você não será obrigado a manipulá-la. Sendo que a maioria das RuntimeExceptions terão sua origem em um problema de lógica do seu programa, um exemplo é a classe NullPointerException.

As demais exceções derivadas de Exception são as chamadas exceções verificadas, ou seja, podem ser manipuladas com cláusulas try-catch, declaradas ou lançadas com a palavra chave “throws”.

Algumas observações são válidas:

-Não é válido usar uma claúsula try sem uma catch ou finally (É possível omitir uma cláusula catch ou uma finally, mas não as duas);

-Não é válido usar uma cláusula catch sem uma try.

-Qualquer claúsula finally deve vir imediatamente após a claúsula catch ou após a try, caso não haja uma cláusula catch.

Por enquanto fico por aqui, espero que tenham gostado, e no próximo artigo citarei de forma prática o tratamento de exceções.

  1. Deixe um comentário

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Sair / Alterar )

Imagem do Twitter

You are commenting using your Twitter account. Sair / Alterar )

Foto do Facebook

You are commenting using your Facebook account. Sair / Alterar )

Connecting to %s

Seguir

Obtenha todo post novo entregue na sua caixa de entrada.