Creación de Excepciones Personalizadas
Desliza para mostrar el menú
A medida que desarrollas aplicaciones Java más complejas, puedes encontrar situaciones de error que son únicas para la lógica de tu programa. Aunque Java proporciona muchas excepciones integradas, a veces ninguna de ellas describe claramente el problema específico que deseas reportar. En estos casos, puedes crear tus propias excepciones personalizadas. Las excepciones personalizadas permiten asignar nombres significativos a las condiciones de error, facilitando la comprensión, el mantenimiento y la depuración del código. Al definir excepciones adaptadas a las necesidades de tu aplicación, ayudas a otros desarrolladores (y a ti mismo en el futuro) a identificar y gestionar rápidamente escenarios de error específicos.
Para crear una excepción personalizada, se define una nueva clase que extiende la clase Exception o la clase RuntimeException. Si la excepción debe ser comprobada (es decir, el compilador obliga a gestionarla con un bloque try-catch o declararla con throws), se extiende Exception. Si debe ser no comprobada (no exigida por el compilador), se extiende RuntimeException. La excepción personalizada puede incluir constructores, campos y métodos como cualquier otra clase, pero es común proporcionar al menos un constructor que acepte un mensaje describiendo el error.
Main.java
123456789101112131415161718192021222324package com.example; class InvalidAgeException extends Exception { public InvalidAgeException(String message) { super(message); } } public class Main { public static void checkAge(int age) throws InvalidAgeException { if (age < 18) { throw new InvalidAgeException("Age must be at least 18."); } System.out.println("Access granted. Age is valid."); } public static void main(String[] args) { try { checkAge(15); } catch (InvalidAgeException e) { System.out.println("Caught exception: " + e.getMessage()); } } }
En el código anterior, se define una excepción comprobada personalizada creando la clase InvalidAgeException, que extiende de Exception. Esta clase tiene un constructor que acepta un mensaje de error. El método checkAge lanza una InvalidAgeException si la edad proporcionada es menor que 18.
En el método main, se llama a checkAge(15), lo que desencadena la excepción. El bloque try-catch captura la excepción e imprime su mensaje. Este patrón muestra cómo se pueden utilizar excepciones personalizadas para manejar condiciones de error específicas de manera clara y organizada.
¡Gracias por tus comentarios!
Pregunte a AI
Pregunte a AI
Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla