Descripción

excepciones Java se dividen en dos categorías principales: excepciones comprobadas y sin marcar excepciones. En este artículo, proporcionaremos algunos ejemplos de código sobre cómo usarlos.

Excepciones comprobadas

En general, las excepciones comprobadas representan errores fuera del control del programa. Por ejemplo, el constructor de FileInputStream lanza FileNotFoundException si el archivo de entrada no existe.

Java verifica las excepciones comprobadas en tiempo de compilación.,

por lo tanto, debemos usar la palabra clave throws para declarar una excepción comprobada:

También podemos usar un bloque try-catch para manejar una excepción comprobada:

algunas excepciones comprobadas comunes en Java son IOException, SQLException y ParseException.

La clase Exception es la superclase de excepciones comprobadas. Por lo tanto, podemos crear una excepción marcada personalizada extendiendo Exception:

public class IncorrectFileNameException extends Exception { public IncorrectFileNameException(String errorMessage) { super(errorMessage); }}

Unchecked Exceptions

Si un programa lanza una excepción no marcada, refleja algún error dentro de la lógica del programa., Por ejemplo, si dividimos un número por 0, Java lanzará ArithmeticException:

private static void divideByZero() { int numerator = 1; int denominator = 0; int result = numerator / denominator;}

Java no verifica las excepciones no marcadas en tiempo de compilación. Además, no tenemos que declarar excepciones sin marcar en un método con la palabra clave throws. Y aunque el código anterior no tiene ningún error durante el tiempo de compilación, lanzará ArithmeticException en tiempo de ejecución.

algunas excepciones comunes sin marcar en Java son NullPointerException, ArrayIndexOutOfBoundsException e IllegalArgumentException.,

La Clase RuntimeException es la superclase de todas las excepciones no marcadas. Por lo tanto, podemos crear una excepción personalizada sin marcar extendiendo RuntimeException:

public class NullOrEmptyException extends RuntimeException { public NullOrEmptyException(String errorMessage) { super(errorMessage); }}

cuándo usar excepciones marcadas y excepciones sin marcar

es una buena práctica usar excepciones en Java para que podamos separar el código de manejo de errores del Código normal. Sin embargo, tenemos que decidir qué tipo de excepción lanzar., El Oracle Java Documentación se proporciona orientación sobre cuándo utilizar excepciones comprobadas y sin marcar excepciones:

«Si un cliente puede esperar razonablemente para recuperarse de una excepción, hacen una excepción comprobada. Si un cliente no puede hacer nada para recuperarse de la excepción, que sea una excepción sin marcar.»

por ejemplo, antes de abrir un archivo, primero podemos validar el nombre del archivo de entrada. Si el nombre del archivo de entrada del Usuario no es válido, podemos lanzar una excepción marcada personalizada:

if (!isCorrectFileName(fileName)) { throw new IncorrectFileNameException("Incorrect filename : " + fileName );}

de esta manera, podemos recuperar el sistema aceptando otro nombre de archivo de entrada del usuario., Sin embargo, si el nombre del archivo de entrada es un puntero nulo o es una cadena vacía, significa que tenemos algunos errores en el código. En este caso, se debe lanzar un desactivada excepción:

if (fileName == null || fileName.isEmpty()) { throw new NullOrEmptyException("The filename is null or empty.");}

Conclusión

En este artículo, hablamos de la diferencia entre lo facturado y sin excepciones. También proporcionamos algunos ejemplos de código para mostrar cuándo usar excepciones marcadas o no marcadas.

como siempre, todo el código encontrado en este artículo se puede encontrar en GitHub.,

empezar con el Muelle 5 y el Resorte de Arranque 2, a través del aprendizaje del curso Primavera:

>> COMPRUEBE EL CURSO