Lanzamiento y excepciones personalizadas
Aprenda a lanzar excepciones explícitamente y a definir clases de excepciones personalizadas.
Lanzamiento y excepciones personalizadas es una lección gratuita de Java Academy en CoddyKit. Esta es la lección 1 de 3. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Java Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Java Academy incluye 3 lecciones en total.
Introducción
A veces necesita señalar un error por sí mismo. Java permite throw excepciones explícitamente e incluso crear tipos personalizados.
Palabra clave throw
La instrucción throw crea y lanza una excepción. Utilícela dentro de los métodos para indicar que algo ha salido mal.
Código: throw integrado
Aquí throw lanza una IllegalArgumentException cuando age es demasiado pequeño.
public class Main {
static void checkAge(int age) {
if (age < 18) {
throw new IllegalArgumentException("Must be 18 or older");
}
System.out.println("Access granted");
}
public static void main(String[] args) {
try {
checkAge(15);
} catch (IllegalArgumentException e) {
System.out.println("Caught: " + e.getMessage());
}
}
}
Excepciones personalizadas
Puede crear sus propias excepciones personalizadas. Para las excepciones comprobadas, extienda Exception. Para las no comprobadas, extienda RuntimeException.
Código: excepción personalizada
Esto muestra una excepción comprobada personalizada. Los métodos deben declararla mediante throws.
public class Main {
// Custom checked exception
static class InvalidAgeException extends Exception {
InvalidAgeException(String msg) { super(msg); }
}
static void validate(int age) throws InvalidAgeException {
if (age < 18) throw new InvalidAgeException("Too young!");
}
public static void main(String[] args) {
try {
validate(15);
} catch (InvalidAgeException e) {
System.out.println("Caught custom: " + e.getMessage());
}
}
}
Código: personalizada de RuntimeException
Las excepciones personalizadas de ejecución extienden RuntimeException. No es necesario declararlas.
public class Main {
// Custom unchecked exception
static class FatalError extends RuntimeException {
FatalError(String msg) { super(msg); }
}
public static void main(String[] args) {
try {
throw new FatalError("Something bad happened");
} catch (FatalError e) {
System.out.println("Caught runtime: " + e.getMessage());
}
}
}
Comprobación de excepciones personalizadas
Comprobación rápida: ¿Cómo se define una excepción comprobada personalizada?
Repaso
Repaso: Utilice throw para señalar errores. Extienda Exception para las excepciones comprobadas o RuntimeException para las excepciones personalizadas no comprobadas.
Preguntas frecuentes
¿La lección «Lanzamiento y excepciones personalizadas» es gratis?
Sí — el texto completo de «Lanzamiento y excepciones personalizadas» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Java Academy, actualiza a CoddyKit PRO. El curso de Java Academy incluye 3 lecciones en total.
¿Qué aprenderé en «Lanzamiento y excepciones personalizadas»?
Aprenda a lanzar excepciones explícitamente y a definir clases de excepciones personalizadas. Practicas Java Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar Java Academy?
No se requiere experiencia previa. Java Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 1 de 3.
¿Cuánto tiempo toma la lección «Lanzamiento y excepciones personalizadas»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de Java Academy?
Sí. Cada lección de Java Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- Lanzamiento y excepciones personalizadas
- try-with-resources (AutoCloseable)
- Programación defensiva