Manuseio de exceção em Java | Explicado

Manuseio de exceção em Java | Explicado
Java fornece um conceito de Manipulação de exceção Isso torna possível lidar com os erros no tempo de execução, dessa maneira, o seguimento normal do programa não seria afetado. Para lidar com as exceções de tempo de execução, o Java fornece várias maneiras, como Try-Catch, finalmente, arremesso, lança. O fluxo normal pode ser preservado usando qualquer um desses métodos de manuseio de exceção.

Este artigo apresenta uma compreensão profunda dos seguintes aspectos do tratamento de exceções:

  • O que são exceções em Java?
  • O que é manuseio de exceção em java
  • Como lidar com exceções em java

Então vamos começar!

O que são exceções em Java

Um evento inesperado que interrompe o fluxo do programa é referido como uma exceção e, para fazer um programa executado com sucesso, temos que lidar com essas exceções.

O que é manuseio de exceção em java

É um processo de lidar com os erros em tempo de execução, por exemplo IoException, ClassNotFoundException, SqLException, etc. O manuseio de exceção nos ajuda a evitar a interrupção do fluxo normal/regular de um programa.

Como lidar com exceções em java

Em Java, as exceções podem ser tratadas de várias maneiras, como, podemos utilizar o Try-Catch, lançar, arremessar e, finalmente, declarações.

Try-Catch

Uma das maneiras mais usadas de lidar com as exceções é Try-Catch declarações usadas como um par. O código declarado dentro do bloco de tentativa será verificado quanto às exceções/erros e, se a exceção ocorrer, será pego no bloco de captura.

A sintaxe da instrução Try-Catch é mostrada no trecho abaixo:

tentar

// código a ser verificado para exceção

pegar

// Código para lidar com exceções

O bloco de tentativa será seguido por um ou mais blocos de captura.

Exemplo

Neste exemplo, criamos, inicializamos uma variável "NUM = 50" e uma variedade de números inteiros, em seguida, utilizamos um "para o loop" para iterar por meio de cada índice da matriz.

publicCllassexceptionHandlingExample
publicstaticVoidMain (String [] args)
int num = 50;
int [] arr = 5, 10, 0, 25, 5;
para (inti = 0; itentar
Sistema.fora.println ("Resultado:" + num / arr [i]);
catch (Exceção ex)
Sistema.fora.println ("uma exceção ocorre");



Em seguida, escrevemos um pedaço de código dentro do bloco de tentativa que será testado se ocorrer uma exceção, ele será tratado no bloco de captura:

A partir do trecho acima, observamos que, quando ocorre um erro, nesse ponto o programa mostra uma mensagem “Uma exceção ocorre” e depois, o loop itera através das entradas restantes da matriz I.e. O fluxo normal do programa não perturbou.

Finalmente declaração

Outra maneira útil de lidar com exceções é o uso de finalmente palavra-chave que pode ser usada com a instrução Try-Catch.

É uma boa prática escrever as declarações/código importantes (que você deseja executar em qualquer situação) dentro do finalmente Bloco porque sempre será executado, independentemente das consequências do bloco de tentativa de Try.e. se as exceções são tratadas ou não.

Exemplo

O snippet de código abaixo permitirá que você entenda como usar a palavra -chave finalmente em Java:

publicCllassexceptionHandlingExample
publicstaticVoidMain (String [] args)
tentar
int número 1 = 12;
int número2 = 0;
Sistema.fora.println (número1/número2);

Catch (ArrayIndexoutOfBoundSexceptionExcep)
Sistema.fora.println ("Exceção ocorreu");

finalmente

Sistema.fora.println ("finalmente bloco");


Vamos dar uma olhada no trecho abaixo para observar como a palavra -chave finalmente funciona:

Da figura acima, observamos que o bloco finalmente é executado com sucesso, independentemente dos blocos de tentativa.

jogue palavras -chave

Em Java, exceções podem ser tratadas explicitamente com a ajuda de lançar. A palavra -chave de arremesso nos ajuda a criar uma exceção personalizada, além disso, pode ser usada com qualquer tipo de exceção, como Índice de matriz fora dos limites de exceção, Arithmeticexception, e assim por diante.

Exemplo

Neste exemplo, aceitaremos um valor no momento de uma chamada de função, se o valor de entrada for igual a 0, então jogaremos um personalizado Exceção aritmética.

publicClassThrowExample
publicVoidDivide (Int Input)
INT número = 100;
if (input == 0)
thrownewarithmeticexception ("\ n Você entra 0, não pode executar a divisão");
outro
Sistema.fora.println ("Resultado:" + número / entrada);


publicstaticVoidMain (String [] args)
throwExample obj = newhrowExample ();
obj.divida (0);

O trecho de código completo junto com a saída é fornecido no seguinte snippet:

O trecho de código acima mostra que a passagem "0" como a entrada resulta em exceções personalizadas que autentica o funcionamento do lançar palavra -chave.

Conclusão

O manuseio de exceção é um processo que lida com os erros/exceções no tempo de execução. Em Java, exceções/erros podem ser tratados com a ajuda de Try-Catch, Throw e, finalmente, palavras-chave/declarações. O Try-Catch As declarações são usadas como um par, enquanto o finalmente pode ser usado com a instrução TRY ou com a instrução Try-Catch. A declaração de tentativa é usada para testar o código para exceções/erros, o bloco de captura é usado para capturar as exceções finalmente Block sempre executa o código, independentemente das consequências enquanto usando o lançar palavra -chave Uma exceção pode ser lançada explicitamente.