tipos de excepciones en Java

Java es un lenguaje de programación orientado a objetos. Proporciona soporte para varios mecanismos como el manejo de excepciones. Esta característica de Java permite a los desarrolladores administrar los errores de tiempo de ejecución causados por las excepciones.

en este artículo, aprenderá sobre las excepciones en Java. También aprenderá sobre diferentes tipos de excepciones en Java.

Las excepciones son los errores no deseados o bugs o eventos que restringen la ejecución normal de un programa., Cada vez que ocurre una excepción, la ejecución del programa se interrumpe. Se muestra un mensaje de error en la pantalla.

Hay varias razones detrás de la ocurrencia de excepciones. Estas son algunas condiciones en las que se produce una excepción:

  • siempre que un usuario proporcione datos no válidos.
  • el archivo al que se desea acceder no existe en el sistema.
  • Cuando la máquina virtual Java (JVM) se queda sin memoria.
  • La Red cae en medio de la comunicación.

Ahora vamos a explorar diferentes tipos de excepciones en Java.,

la clase padre de todas las clases de excepción es java.lang.Clase de excepción. La figura 1 ilustra los diferentes tipos de excepciones de Java.

Figura 1: Tipos de Excepciones en Java

Si hablamos de la clase de Excepción, es una subclase de la incorporada en el Arrojadiza de la clase. Hay otra subclase que se deriva de la clase lanzable, es decir, Error, como se ilustra en la Figura 1., El error se puede definir como una condición anormal que indica que algo ha ido mal con la ejecución del programa. Estos no son manejados por programas Java.

hay algunos métodos importantes disponibles en la clase lanzable que son los siguientes:

  • public String getMessage() – proporciona información sobre la excepción que se ha producido a través de un mensaje, que se inicializa en el constructor lanzable.
  • public Throwable getCause () – proporciona la causa raíz de la excepción representada por un objeto lanzable.,
  • public void printStackTrace () – se usa para mostrar la salida de toString () junto con el seguimiento de la pila al sistema.err (flujo de salida de error).
  • public stacktraceelement getStackTrace () – devuelve un array con cada elemento presente en el seguimiento de la pila. El elemento index 0 simbolizará la parte superior de la pila de llamadas, y el último elemento del array identificará la parte inferior de la pila de llamadas.,

There are mainly two types of exceptions in Java as follows:

  • Checked exception
  • Unchecked exception

Checked exception

Checked exceptions are also known as compile-time exceptions as these exceptions are checked by the compiler during the compilation process to confirm whether the exception is handled by the programmer or not. If not, then the system displays a compilation error. For example, SQLException, IOException, InvocationTargetException, and ClassNotFoundException.,

para ilustrar el concepto de excepción marcada, consideremos el siguiente fragmento de código:

Output:

Exception in thread "main" java.lang.Error: Unresolved compilation problems:Unhandled exception type FileNotFoundExceptionUnhandled exception type IOExceptionUnhandled exception type IOException

throw keyword

se muestra claramente en la salida que el programa arroja excepciones durante el proceso de compilación. Existen dos métodos para resolver estos problemas. Puedes declarar la excepción con la ayuda de la palabra clave throw.

Salida: El archivo se mostrará en la pantalla.

try-catch block

aparte del método mencionado anteriormente, hay otra forma de resolver las excepciones., Puedes manejarlos con la ayuda de bloques try-catch.

salida: el código se ejecutará sin problemas y se mostrará el archivo.

Ahora, vamos a aprender acerca de otras excepciones comprobadas. Algunos de ellos son:

SQLException

Este tipo de excepción ocurre mientras se ejecutan consultas en una base de datos relacionada con la sintaxis SQL. Por ejemplo, considere el siguiente fragmento de código:

Salida: este código generará una SQLException.

IOException

Este tipo de excepción se produce mientras se utilizan operaciones de flujo de E/S de archivo., Por ejemplo, considere el siguiente fragmento de código:

Salida: Este código generará una IOException.

ClassNotFoundException

Este tipo de excepción se produce cuando la JVM no puede encontrar la clase requerida. Puede deberse a un error en la línea de comandos, un problema de ruta de clase o una falta .archivo de clase. Por ejemplo, considere el siguiente fragmento de código:

Salida: este código generará una ClassNotFoundException.

InvocationTargetException

Este tipo de excepción envuelve una excepción lanzada por un método invocado o un constructor., Se puede acceder a la excepción lanzada con la ayuda del método getTargetException. Por ejemplo, considere el siguiente fragmento de código:

Resultado:

Invoking testMethod()An InvocationTargetException was caught!Invocation of testMethod failed because of: The string must contain at least one character!

Salida: Este código generará un InstantiationException.

excepción sin marcar

las excepciones sin marcar Son aquellas excepciones que ocurren durante la ejecución del programa. Por lo tanto, también se les conoce como excepciones de tiempo de ejecución. Estas excepciones generalmente se ignoran durante el proceso de compilación. No se comprueban mientras se compila el programa., Por ejemplo, Errores de programación como errores lógicos y el uso de API incorrectas.

Para ilustrar el concepto de un desactivada excepción, consideremos el siguiente fragmento de código:

la Salida 1:

Enter your age in Numbers: 21You can view the page

Salida 2:

Ahora, vamos a aprender acerca de otros sin marcar excepciones. Algunas de ellas son:

NullPointerException

Este tipo de excepción se produce cuando se intenta acceder a un objeto con la ayuda de una variable de referencia cuyo valor actual es nulo o vacío., Por ejemplo, considere el siguiente fragmento de código:

salida: NullPointerException se encuentra en el programa.

ArrayIndexOutofBound

Este tipo de excepción se produce cuando se intenta acceder a una matriz con un valor de índice no válido. El valor que está proporcionando es negativo o más allá de la longitud de la matriz.

por ejemplo, considere el siguiente fragmento de código:

salida: el índice de la matriz está fuera de enlace

IllegalArgumentException

Este tipo de excepción ocurre cuando se pasa un argumento inapropiado o incorrecto a un método., Por ejemplo, si un método está definido con una cadena no vacía como parámetros. Pero está proporcionando cadenas de entrada nulas. Luego, se lanza la excepción IllegalArgumentException para indicar al usuario que no puede pasar una cadena de entrada nula al método.

considere el siguiente fragmento de código para demostrar este tipo de excepción:

IllegalStateException

Este tipo de excepción ocurre cuando el estado del entorno no coincide con la operación que se está ejecutando., Por ejemplo, considere el siguiente fragmento de código, que demuestra este tipo de excepción:

Salida: este código generará IllegalStateException.

si ya existe una fecha de publicación en el sistema, entonces producirá una excepción Ilegalstateexception que indica que el libro no se puede volver a publicar.

NumberFormatException

Este tipo de excepción se produce cuando se pasa una cadena a un método que no se puede convertir en un número. Por ejemplo, considere el siguiente fragmento de código:

Salida: Este código generará NumberFormatException.,

ArithmeticException

Este tipo de excepción se produce cuando se realiza una incorrecta operación aritmética. Por ejemplo, si divide cualquier número por cero, mostrará dicha excepción. Consideremos el siguiente fragmento de código:

Salida: Este código generará un ArithmeticException.

monitoree sus aplicaciones Java con una herramienta con Stackify Retrace. Descargue su versión de prueba gratuita de dos semanas hoy.,

Leer a continuación: 9 Mejores Prácticas Para manejar excepciones en Java

  • acerca del autor
  • últimas publicaciones

acerca de Sagar Arora

Sagar Arora es un experimentado escritor de contenido técnico con conocimiento lenguajes++, Python, php, java. Su cobertura de escritura incluye compañías como iSkysoft, Keepvid, Xpo2, Stackify,Entreprenebus, etc.

  • Ruby on Rails: mejores Blogs y canales de YouTube – 29 de noviembre de 2018
  • nodo más Popular.,JS Frameworks in 2018-November 19, 2018
  • Top 10 Node.JS Developer Tools-noviembre 13, 2018
  • Mejor nodo.JS Blogs y canales de YouTube – noviembre 12, 2018
  • Aprender JavaScript: tutoriales para principiantes, programadores intermedios y avanzados – octubre 18, 2018

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *