Este artigo discutirá o uso e a implementação do Java “Encadeamento excepcional”.
O que é "encadeamento de exceção" em Java?
““Encadeamento de exceção”É enfrentado quando uma exceção causa outra exceção. É tal que a exceção real é o motivo da segunda exceção.
Antes de se mover em direção ao exemplo a seguir, inclua o pacote abaixo para executar “Entrada/saída" operações:
importar java.io.*;
Exemplo 1: Aplicando o encadeamento de exceção usando "ioexception" e "eofexception" em java
O "Eofexception”Em Java é encontrado quando a extremidade do arquivo é alcançada inesperadamente enquanto inseriu. O "Ioexception”No entanto, é enfrentado quando ocorre um erro de E/S ocorre.
Neste exemplo, o encadeamento excepcional pode ser realizado de tal forma que a exceção, eu.e., ““Eofexception”É a principal causa da exceção de face, eu.e., ““Ioexception”:
publicCllassexceptionCheing
publicstaticVoidMain (String args [])
tentar
thrownew ioexception ("ioexception encontrado").
initCause (nova eofexception ("A principal causa é a eofexception"));
Catch (jogável, exceto)
Sistema.fora.println ("Exceção enfrentada:" + exceto);
Eofexception real = (eofexception), exceto.getCause ();
Sistema.fora.println ("A causa é:" + real);
Nas linhas de código acima, aplique as seguintes etapas:
Saída
Nesta saída, pode -se observar que as exceções voltadas e reais são exibidas adequadamente.
Exemplo 2: Aplicando o encadeamento de exceção usando "arithmeticexception" e "nullpointerException" em java
O "Arithmeticexception”Corresponde à condição aritmética excepcional de face. O "Null Pointer Exception”Está enfrentado quando uma variável que está sendo invocada ainda não está alocada a um objeto.
Este exemplo utiliza essas duas exceções, de modo que a exceção anterior é a exceção enfrentada devido à última exceção:
publicCllassexceptionClaining2
publicstaticVoidMain (String args [])
tentar
Arithmeticexception real =
nova arithmeticexception ("Exceção encontrada");
real.initCausa (new NullPointerException ("principal causa"));
jogar real;
Catch (arithmeticexception, exceto)
exceto.printStackTrace ();
Sistema.fora.println (exceto.getCause ());
De acordo com o snippet de código acima, aplique as etapas abrangentes:
Saída
Nesse resultado, pode estar implícito que as exceções face e as exceções reais são exibidas em detalhes.
Conclusão
““Encadeamento de exceção”Em Java é enfrentado quando uma exceção resulta em outra exceção. É tal que a exceção real é a causa da exceção enfrentada. O encadeamento é feito para identificar a causa real da exceção e exibi -la. Este blog orientou o uso e a implementação de encadeamento excepcional em Java.