Recomendado, 2024

La Elección Del Editor

Diferencia entre error y excepción en Java

"Throwable" actúa como la raíz de la jerarquía de errores y excepciones de Java. "Error" es una condición crítica que no puede ser manejada por el código del programa. "Excepción" es la situación excepcional que puede ser manejada por el código del programa. La diferencia significativa entre el error y la excepción es que un error se debe a la falta de recursos del sistema y una excepción se debe a su código. Estudiemos otras diferencias entre error y excepción junto con un cuadro de comparación.

Gráfica comparativa

Bases para la comparaciónErrorExcepción
BASICSe produce un error debido a la falta de recursos del sistema.Se produce una excepción debido al código.
RecuperaciónUn error es irrecuperable.Una excepción es recuperable.
Palabras claveNo hay ningún medio para manejar un error por el código del programa.Las excepciones se manejan utilizando tres palabras clave "intentar", "atrapar" y "lanzar".
Consecuencias
A medida que se detecte el error, el programa terminará de manera anormal.Como se detecta una excepción, es lanzada y atrapada por las palabras clave "lanzar" y "atrapar" de manera correspondiente.
Los tiposLos errores se clasifican como tipo sin marcar.Las excepciones se clasifican como de tipo marcado o sin marcar.
PaqueteEn Java, los errores se definen en el paquete "java.lang.Error".En Java, las excepciones se definen en "java.lang.Exception".
EjemploOutOfMemory, StackOverFlow.Excepciones comprobadas: NoSuchMethod, ClassNotFound.
Excepciones sin marcar: NullPointer, IndexOutOfBounds.

Definición de error

" Error " es una subclase de la clase incorporada "Throwable". Los errores son las condiciones críticas que ocurren debido a la falta de recursos del sistema y no pueden ser manejados por el código del programa. Los errores no se pueden recuperar de ninguna manera porque no se pueden crear, lanzar, capturar o responder. Los errores son causados ​​debido a la falla catastrófica que generalmente no puede ser manejada por su programa.

Los errores siempre son de tipo no verificado, ya que el compilador no tiene ningún conocimiento sobre su ocurrencia. Los errores siempre ocurren en el entorno de ejecución. El error se puede explicar con la ayuda de un ejemplo, el programa tiene un error de desbordamiento de pila, error de memoria insuficiente o error de falla del sistema; este tipo de error se debe al sistema. El código no es responsable de tales errores. La consecuencia de la aparición del error es que el programa se termina de forma anormal.

Definición de excepción

"Exception" es también una subclase de la clase incorporada "Throwable". Las excepciones son las condiciones excepcionales que se producen en un entorno de ejecución. La mayoría de las veces las excepciones son causadas debido al código de nuestro programa. Pero, las excepciones pueden ser manejadas por el propio programa, ya que las excepciones son recuperables. Las excepciones se manejan usando tres palabras clave "intentar", "atrapar", "lanzar". La sintaxis de escribir una excepción es:

 intente {// escriba su código aquí} Capturar (tipo de excepción) {// escriba su código aquí} 

En el código anterior, el código escrito en el bloque try es el código que desea supervisar para la excepción. Si la excepción ocurre en un bloque try, se lanza usando la palabra clave "throw". La excepción lanzada puede ser capturada por el bloque de "captura" del código anterior. "Tipo de excepción" es el tipo de excepción que ha ocurrido.

En palabras simples, podemos decir que los errores ocurridos debido a un código incorrecto se denominan excepciones. Por ejemplo, si no se encuentra una clase solicitada, o si no se encuentra un método solicitado. Este tipo de excepciones se deben al código en el programa; El sistema no es responsable de este tipo de excepciones. Las excepciones se clasifican como "verificadas" y "sin marcar". Las excepciones no verificadas no están en conocimiento del compilador, ya que se producen durante el tiempo de ejecución, mientras que el compilador tiene conocimiento sobre las excepciones comprobadas, ya que se sabe que el compilador las conoce durante el tiempo de compilación.

Diferencias clave en el error y la excepción

  1. El error ocurre solo cuando los recursos del sistema son deficientes, mientras que una excepción es causada si un código tiene algún problema.
  2. Un error nunca se puede recuperar, mientras que una excepción se puede recuperar preparando el código para manejar la excepción.
  3. Nunca se puede manejar un error, pero el código puede manejar una excepción si el código que lanza una excepción se escribe dentro de un bloque try and catch.
  4. Si ha ocurrido un error, el programa terminará de forma anormal. Por otro lado, si ocurre la excepción, el programa lanzará una excepción y se manejará usando el bloque de prueba y captura.
  5. Los errores son de tipo no comprobado, es decir, los errores no están en conocimiento de los compiladores, mientras que una excepción se clasifica como marcada y no verificada.
  6. Los errores se definen en el paquete java.lang.Error, mientras que una excepción se define en java.lang.Exception.

Conclusión:

Las excepciones son el resultado de errores cometidos en la codificación del programa, y ​​los errores son el resultado del mal funcionamiento del sistema.

Top