Diferencia clave: excepción comprobada frente a no verificada en Java
Una excepción es un error de tiempo de ejecución. Hay dos tipos de excepciones conocidas como excepciones comprobadas y no comprobadas. Cuando se produce una excepción comprobada, la aplicación Java se conecta a un recurso externo, como un archivo, un dispositivo o una base de datos. Estas excepciones son verificadas por el compilador. Algunos ejemplos de excepciones verificadas son la excepción IO y la excepción FileNotFound. Cuando ocurre una excepción no verificada, la aplicación no está conectada a ningún recurso externo. El compilador no verifica estas excepciones. Algunos ejemplos de excepciones no verificadas son Excepción aritmética y Excepción ArrayOutOfBound. Este artículo analiza la diferencia entre la excepción marcada y no marcada en Java. La diferencia clave entre la excepción verificada y no verificada en Java es que el compilador verifica una excepción verificada, mientras que el compilador no verifica una excepción no verificada.
¿Qué es la excepción marcada en Java?
Cuando ocurre una excepción verificada, la aplicación Java se conecta a un recurso externo. Este recurso puede ser un dispositivo como una impresora. Puede ser un archivo o una base de datos. Por lo tanto, esas excepciones son verificadas por el compilador. La excepción de E/S es una excepción comprobada. Ocurre debido a un error en el dispositivo. Cuando la aplicación accede a un archivo que no existe, provocará una excepción FileNotFound. Una aplicación se puede conectar a una base de datos como MySQL, Oracle, etc. para almacenar datos. Si ocurriera un error relacionado con una base de datos, sería una excepción de SQL. Esos son algunos ejemplos de excepciones comprobadas. En todos estos, la aplicación está conectada a un recurso externo. En las excepciones marcadas, es obligatorio manejar la excepción. Si no se maneja, se terminará el flujo correcto del programa y no se generará el archivo de clase. El error se puede manejar usando el bloque try, catch.
Figura 01: Manejo de excepciones marcadas
Según lo anterior, FileReader lee los datos del archivo. El archivo text1.txt no existe en la ubicación especificada. El código que puede dar la excepción se coloca dentro del bloque de prueba. El mensaje a imprimir está dentro del bloque catch. Como no hay ningún archivo llamado text1.txt, esto provoca una excepción FileNotFoundException. Al usar el manejo de excepciones, el mensaje se imprime en la pantalla.
¿Qué son las excepciones no comprobadas en Java?
El compilador no comprueba las excepciones no comprobadas. A diferencia de las excepciones verificadas, con las excepciones no verificadas, la aplicación Java no está conectada a un recurso externo, como un archivo, una base de datos o un dispositivo. Algunas excepciones no verificadas comunes son las excepciones aritmética, ArrayOutOfBound y NullPointer.
int a=10, b=0;
int división=a/b;
Sistema.fuera.println(div);
Esto provocará una excepción aritmética debido a la inmersión de 'a' entre cero. Consulte el siguiente código.
Figura 02: Manejo de excepciones aritméticas
Según el programa anterior, la variable a es un valor entero. La variable b es 0. La división de estos dos números es una división por cero. Por lo tanto, causará una excepción aritmética. Se puede manejar usando el bloque try-catch. Las declaraciones que pueden causar la excepción se colocan dentro del bloque try. El mensaje que se mostrará se encuentra en el bloque catch.
Consulte la siguiente parte del código.
int arreglo1={1, 2, 3, 4, 5};
Sistema.fuera.println(matriz1[5]);
Esto provocará una excepción. El array1 es un array de 5 elementos. El índice inicial de la matriz es cero. Imprimir el valor del índice 5th provoca una excepción porque está fuera de límite. El índice máximo de la matriz1 es 4.
Figura 03: Manejo de excepciones ArrayOutOfBound
Según el programa anterior, el arreglo1 tiene 5 elementos. Imprimir el elemento con el índice 6 provocará una excepción porque está fuera de límite. El índice máximo que se puede almacenar en matriz1 es 5. El mensaje de error se imprime al ejecutar el bloque catch.
¿Cuál es la similitud entre la excepción marcada y no marcada en Java
Tanto la excepción marcada como la no marcada en Java son tipos de excepción en Java
¿Cuál es la diferencia entre la excepción marcada y no marcada en Java?
Excepción comprobada frente a no comprobada en Java |
|
Una excepción verificada es un error de tiempo de ejecución verificado por el compilador. | Una excepción no verificada es un error de tiempo de ejecución que el compilador no verifica. |
Ocurrencia | |
Cuando se produce una excepción verificada, la aplicación Java se conecta a un recurso externo, como un archivo, un dispositivo o una base de datos. | Cuando ocurre una excepción no verificada, la aplicación Java no está conectada a un recurso externo. |
Ejemplos | |
IOException, FileNotFoundException, SQLException son algunos ejemplos de excepciones comprobadas. | La excepción aritmética, ArrayOutOfBoundException, NullPointerException son algunos ejemplos de excepciones no comprobadas. |
Resumen: excepción comprobada frente a no verificada en Java
Una excepción es un evento que interrumpe la ejecución del flujo del programa. Hay dos tipos de excepciones. Se denominan excepciones comprobadas y excepciones no comprobadas. Este artículo discutió la diferencia entre una excepción verificada y excepciones no verificadas. La diferencia entre la excepción verificada y no verificada en Java es que el compilador verifica una excepción verificada, mientras que el compilador no verifica una excepción no verificada. Dado que las excepciones afectan el flujo correcto de la ejecución del programa, es una buena práctica de programación manejarlas.