Pruebe Catch en Java: Ejemplo de manejo de excepciones

¿Qué es una excepción?

La excepción es un evento que interrumpe el flujo normal de ejecución. Es una interrupción durante la ejecución del programa Java.

En este tutorial, aprenderá-

Hay dos tipos de errores:

  1. Compilar errores de tiempo
  2. Errores en tiempo de ejecución

Los errores de tiempo de compilación se pueden volver a clasificar de nuevo en dos tipos:

  • Errores de sintaxis
  • Errores semánticos

Ejemplo de errores de sintaxis:

En lugar de declararlo, int a;usted declaró erróneamente in a;que el compilador arrojará un error.

Ejemplo: has declarado una variable int a;y después de algunas líneas de código declaras nuevamente un entero como int a;. Todos estos errores se resaltan cuando compila el código.

Ejemplo de errores de tiempo de ejecución

Un error en tiempo de ejecución se denomina error de Excepciones . Es cualquier evento que interrumpe el flujo normal de ejecución del programa.

Ejemplo de excepciones son excepción aritmética, excepción Nullpointer, excepción Divide by zero, etc.

¿Por qué necesitamos Exception?

Supongamos que ha codificado un programa para acceder al servidor. Las cosas funcionaron bien mientras desarrollaba el código.

Durante la ejecución de producción real, el servidor está inactivo. Cuando su programa intentó acceder, se genera una excepción.

Cómo manejar la excepción

Hasta ahora hemos visto, la excepción está más allá del control del desarrollador. Pero culpar a su falla de código en cuestiones ambientales no es una solución. Necesita una Programación robusta, que se encargue de situaciones excepcionales. Tal código se conoce como Exception Handler.

En nuestro ejemplo, un buen manejo de excepciones sería, cuando el servidor está inactivo, conectarse al servidor de respaldo.

Para implementar esto, ingrese su código para conectarse al servidor (usando las condiciones if y else tradicionales).

Verificará si el servidor está caído. En caso afirmativo, escriba el código para conectarse al servidor de respaldo.

Dicha organización de código, utilizando el bucle “if” y “else” no es efectiva cuando su código tiene múltiples excepciones java para manejar.

Prueba Catch Block

Java proporciona un manejo intrínseco excepcional.

  1. El código normal entra en un bloque TRY.
  2. El código de manejo de excepciones va al bloque CATCH

En nuestro ejemplo, el bloque TRY contendrá el código para conectarse al servidor. El bloque CATCH contendrá el código para conectarse al servidor de respaldo.

En caso de que el servidor esté activo, se ignorará el código en el bloque CATCH. En caso de que el servidor esté inactivo, se genera una excepción y se ejecutará el código en el bloque catch.

Entonces, así es como se maneja la excepción en Java.

Sintaxis para usar try & catch

Ejemplo

Paso 1) Copie el siguiente código en un editor

Paso 2) Guarde el archivo y compile el código. Ejecute el programa usando el comando java JavaException

Paso 3) Una excepción aritmética: dividir por cero se muestra como se muestra a continuación para la línea 5 y la línea 6 nunca se ejecuta

Paso 4) Ahora veamos cómo try and catch nos ayudará a manejar esta excepción. Pondremos la excepción que causa la línea de código en un bloque de prueba , seguido de un bloque catch . Copie el siguiente código en el editor.

Paso 5) Guarde, compile y ejecute el código. Obtendrá la siguiente salida

Como observa, se maneja la excepción y también se ejecuta la última línea de código. Además, tenga en cuenta que la línea 7 no se ejecutará porque, tan pronto como se produce una excepción, el flujo de control salta al bloque catch.

Nota: El Objeto “e” AritmeticException contiene información sobre la excepción que ha ocurrido y que puede ser útil para realizar acciones de recuperación.

Jerarquía de clases de excepciones Java

Después de que se ejecuta una instrucción de captura, se omiten las demás y la ejecución continúa después del bloque try / catch. Los bloques de captura anidados siguen la jerarquía de excepciones.

  • Todas las clases de excepción en Java extienden la clase ‘Throwable’. Throwable tiene dos subclases, Error y Excepción
  • La clase de error define la excepción o los problemas que nuestro programa no espera que suceda en circunstancias normales, por ejemplo, error de memoria, error de hardware, error de JVM, etc.
  • La clase Excepción representa las excepciones que nuestro programa puede manejar, y nuestro programa puede recuperarse de esta excepción usando el bloque try and catch
  • Una excepción de tiempo de ejecución es una subclase de la clase de excepción. La excepción de este tipo representa la excepción que se produce en el tiempo de ejecución y que no se puede rastrear en el momento de la compilación. Un excelente ejemplo de lo mismo es dividir por excepción de cero, o excepción de puntero nulo, etc.
  • La excepción IO se genera durante las operaciones de entrada y salida
  • Las excepciones interrumpidas en Java se generan durante el enhebrado múltiple.

Ejemplo: para entender la anidación de los bloques try y catch

Paso 1) Copie el siguiente código en un editor.

Paso 2) Guarde el archivo y compile el código. Ejecute el programa usando el comando java JavaException .

Paso 3) Se genera una ArrayIndexOutOfBoundsException. Cambie el valor de int d a 0. Guarde, compile y ejecute el código.

Paso 4) Se debe generar una ArithmeticException.

Paso 5) Descomente la línea n. ° 10 a la línea n. ° 12. Guarde, compile y ejecute el código.

Paso 6) ¿Error de compilación? Esto se debe a que Exception es la clase base de la excepción ArithmeticException. Cualquier excepción que sea generada por ArithmeticException también puede ser manejada por la clase Exception. Por lo tanto, el bloque catch de ArithmeticException nunca tendrá la oportunidad de ejecutarse, lo que lo hace redundante. De ahí el error de compilación.

Java Finally Block

El bloque finally se ejecuta independientemente de que se haya producido una excepción en el bloque try. Es opcional para usar con un bloque try.

En el caso, se genera una excepción en el bloque try, finalmente el bloque se ejecuta después de que se ejecuta el bloque catch.

Ejemplo

Paso 1) Copie el siguiente código en un editor.

Paso 2) Guarde, compile y ejecute el código.

Paso 3) Salida esperada. Por último, el bloqueo se ejecuta aunque se produzca una excepción.

Paso 4) Cambie el valor de la variable d = 1. Guarde, compile y ejecute el código y observe la salida.Bottom of Form

Resumen :

  • Una excepción es un error en tiempo de ejecución que interrumpe el flujo normal de ejecución del programa. La interrupción durante la ejecución del programa se denomina error o excepción.
  • Los errores se clasifican en dos categorías
    • Errores de tiempo de compilación: errores de sintaxis, errores semánticos
    • Errores de tiempo de ejecución: excepción
  • Un programa robusto debe manejar todas las excepciones y continuar con su flujo normal de ejecución del programa. Java proporciona un método de manejo excepcional incorporado
  • Exception Handler es un conjunto de código que maneja una excepción . Las excepciones pueden manejarse en Java usando try & catch.
  • Try block : el código normal va en este bloque.
  • Bloqueo de captura : si hay un error en el código normal, entrará en este bloque
0 replies

Leave a Reply

Want to join the discussion?
Feel free to contribute!

Leave a Reply

Your email address will not be published. Required fields are marked *