Qual é a diferença entre erros e exceções em java

Qual é a diferença entre erros e exceções em java
Enquanto a programação em Java, pode haver situações em que o desenvolvedor se depara com várias limitações. Esses gargalos podem estar na forma de “erros" ou "exceções”. Os primeiros interrompem as funcionalidades do código, abretendo o programador para seguir em frente com o código. As exceções, no entanto, podem ser evitadas para economizar tempo e aborrecimentos.

Este artigo discutirá as diferenças entre erros e exceções Java.

Qual é a diferença entre erros e exceções em java?

O "Erros”Em Java, corresponde aos casos críticos que não podem ser lidados pelo código. O "Exceções”, No outro caso, pode ser detectado e atendido dentro do código para garantir a racionalização do código:

Erro Exceção
O erro não pode ser recuperado ou manuseado. As exceções podem ser tratadas através do “Tente ... pegar" bloquear.
Erros não são conhecidos pelo compilador. Exceções podem ou não ser identificadas pelo compilador.
Erros podem ser sintaxe ou lógico. Estes podem ser desmarcados ou verificados.

Demonstração de "erro de sintaxe"

Em primeiro lugar, vamos ver a ocorrência do “sintaxe”Erro:

int a = 2
Sistema.fora.println (a);

Neste código, basta inicializar o número inteiro sem especificar o Semi-Colon “;”E exibi -lo.

Saída

O código discutido resultará no registro do exibido “erro de sintaxe”Devido a um semicolon ausente.

Solução

Como observado, pela colocação de “;”, O erro de face desaparece.

Demonstração de "erro lógico"

Agora, vamos discutir a aparência do “lógico”Erro:

classe pai
public void Display ()
Sistema.fora.println ("linuxhint!");

classe Child estende o pai
public void Display ()
mostrar();
Sistema.fora.println ("Programação Java!");

classe pública ErrorDemo
public static void main (string args [])
Criança obj = novo filho ();
obj.mostrar();

Neste snippet de código, aplique as etapas abaixo fornecidas:

  • Crie uma classe pai chamada “Pai”E acumule a função“mostrar()”Nele, exibindo a mensagem fornecida.
  • Na próxima etapa, crie uma classe infantil chamada “Criança”Heritando a classe dos pais através da“estende -sePalavra -chave.
  • Dentro desta classe, substitua a função idêntica à sua classe pai para acessar suas funcionalidades.
  • Por fim, no “principal”, Crie um objeto da classe infantil e invocar a função substituída que exibirá o“erro”Como nenhuma referência é passada.

Saída

Nesta saída, pode -se ver que a limitação declarada foi exibida. O "Stackoverflow”O erro geralmente é causado por recursão infinita.

Solução

Nesse resultado, pode estar implícito que associando o “superPalavra -chave, a confusão entre a função de classe criança e pai é eliminada e, portanto, o erro desaparece.

Demonstração de "exceção"

Agora, vamos discutir o exemplo a seguir, afirmando o rosto e o manuseio “exceção”:

tentar
int a = 2;
int b = a/0;
Sistema.fora.println (b);

Catch (arithmeticexception e)
Sistema.fora.println (e.getMessage ());

Neste bloco de código:

  • Primeiro, especifique o “tentar" bloquear. Neste bloco, retorne a divisão dos números inteiros inicializados de modo que “infinidade”É devolvido.
  • Esta ação resulta em retornar uma exceção.
  • Para lidar com essa exceção, atenda à provável exceção no “pegar" bloquear.
  • Dentro deste bloco, exiba a mensagem de exceção usando o “getMessage ()”Método.

Saída

A partir desta saída, pode -se analisar que a exceção enfrentada é tratada adequadamente.

Conclusão

O "Erros”Em Java não pode ser tratado ou resolvido pelo código, enquanto o“Exceções”Pode ser detectado e tratado fazendo o código otimizar. Os erros se tornam um gargalo para continuar as funcionalidades enquanto as exceções podem ser evitadas. Este blog discutiu as diferenças entre os erros e exceções de face em Java.