-
Notifications
You must be signed in to change notification settings - Fork 1
Excepciones en Java
¡Bienvenido a la Wiki de Excepciones en Java!
Este código de ejemplo muestra cómo manejar excepciones en Java utilizando la clase OperacionExcepcion en el paquete excepciones y la clase Aritmetica en el paquete aritmetica.
El programa principal, TestExcepciones, realiza una división entre dos números y maneja posibles excepciones que puedan ocurrir.
La clase OperacionExcepcion es una subclase de RuntimeException y se utiliza para representar una excepción personalizada en caso de que ocurra una operación inválida.
package excepciones;
public class OperacionExcepcion extends RuntimeException {
// Constructor
public OperacionExcepcion(String mensaje) {
super(mensaje);
}
}La clase Aritmetica contiene métodos para realizar operaciones aritméticas, en este caso, se proporciona el método division para realizar la división de dos números.
package aritmetica;
import excepciones.OperacionExcepcion;
public class Aritmetica {
public static int division(int numerador, int denominador) {
if (denominador == 0) {
throw new OperacionExcepcion("División entre cero");
}
return numerador / denominador;
}
}La clase TestExcepciones contiene el método main y demuestra cómo manejar excepciones al realizar una división entre dos números.
El programa intenta realizar una división con los valores 10 y 0. Si se produce una excepción de tipo OperacionExcepcion, se muestra un mensaje de error específico. Si se produce otra excepción de tipo Exception, se muestra un mensaje de error general junto con la pila de excepciones. En cualquier caso, se muestra un mensaje indicando que se revisó la división entre cero.
Después de manejar la excepción, el programa muestra el valor de la variable resultado.
package test;
import static aritmetica.Aritmetica.division;
import excepciones.OperacionExcepcion;
public class TestExcepciones {
public static void main(String[] args) {
int resultado = 0;
try {
resultado = division(10, 0);
} catch (OperacionExcepcion e) {
System.out.println("Ocurrio un error de tipo OperacionExcepcion");
System.out.println(e.getMessage());
} catch (Exception e) {
System.out.println("Ocurrio un Error");
// Se conoce como la pila de excepciones
e.printStackTrace(System.out);
System.out.println(e.getMessage());
} finally {
System.out.println("Se reviso la división entre cero");
}
System.out.println("La variable de resultado tiene como valor: " + resultado);
}
}