Melhor compreensão sobre verificado vs. Exceções não verificadas – Como lidar melhor com exceções em Java?

Publicados: 2014-09-15

Exceção verificada em Java pelo Crunchify

Exceção verificada

O que é Checked Exception na linguagem de programação Java. Em linguagem simples: Exceção que é verificada em tempo de compilação chamada Checked Exception. Alguns destes são mencionados abaixo. Se em seu código se algum método lançar uma checked exception , então o método deve handle the exception ou deve especificar a exceção usando a palavra-chave throws .

  1. IOException
  2. SQLException
  3. DataAccessException
  4. ClassNotFoundException
  5. InvocationTargetException
  6. MalformedURLException

Vamos dar uma olhada no exemplo:

No exemplo abaixo, vamos obter o conteúdo do site “Crunchify.com” e imprimi-lo no console. Durante esta operação, o Programa Java lançará MalformedURLException ou IOException nas linhas destacadas abaixo.

Existem duas maneiras de resolver isso. Add throws clause OU Add Try, Catch block ao seu código para resolvê-lo. Aqui está um código atualizado.

  1. Modifica as linhas 16 e 20 e adiciona throws IOException
  2. Adicionar bloco try catch em 26,42,43

Exceção desmarcada

A exceção não verificada em Java são aquelas exceções cujo tratamento NOT verified during Compile time . Essas exceções ocorrem devido à má programação.

O programa não dará erro de compilação.

Todas as exceções Unchecked são subclasses diretas da classe RuntimeException .

Simple Example : Você criou um formulário online que aceita entrada do usuário. É forma de texto livre. O uso pode inserir qualquer valor errado no caso de campo de e-mail ou campo de nome de usuário OU campo de número de telefone.

Se você não tiver validação no lado do cliente, há mais possibilidades de obter a exceção de validação de tempo de execução ao executar o aplicativo em produção. O erro pode ser gerado por operação de banco de dados ou campo de conversão de um formato para outro.

Abaixo estão os tipos de exceções não verificadas:

  • Null Pointer Exception
  • ArrayIndexOutOfBound
  • Exceção de argumento ilegal
  • IllegalStateException

O que mais me incomoda é o NullPointer Exception. Eu escrevi um artigo detalhado sobre NPE na semana passada.

Há um total de 8 dicas diferentes fornecidas para evitar NPE.

Exceção Java Verificada Vs Não Verificada - Crunchify

ArrayIndexOutofBoundException - Dicas de Crunchify

No Java 7, você pode manipular várias exceções em um único Catch block . Você pode alterar a linha 13 da linha acima alterada para abaixo.

Resumindo, as exceções verificadas e não verificadas são tratadas usando a palavra-chave try, catch e finally .

Em termos de Funcionalidade Checked e Unchecked Exception são os mesmos.