Manejo de excepciones con multi-catch
Captura múltiples tipos de excepción en un solo bloque catch.
Comparación de Código
✕ Pre-Java 7
try {
process();
} catch (IOException e) {
log(e);
} catch (SQLException e) {
log(e);
} catch (ParseException e) {
log(e);
}
✓ Java 7+
try {
process();
} catch (IOException
| SQLException
| ParseException e) {
log(e);
}
¿Ves un problema con este código? Cuéntanos.
Por qué gana la forma moderna
DRY
La misma lógica de manejo escrita una sola vez en lugar de tres.
Relanzable
La excepción capturada se puede relanzar con su tipo preciso.
Escaneable
Todos los tipos manejados son visibles en un solo lugar.
Enfoque Antiguo
Bloques catch separados
Enfoque Moderno
Multi-catch
Desde JDK
7
Dificultad
Principiante
Soporte JDK
Manejo de excepciones con multi-catch
Disponible
Ampliamente disponible desde JDK 7 (julio de 2011)
Cómo funciona
Multi-catch maneja múltiples tipos de excepción con el mismo código. La variable de excepción es efectivamente final, por lo que se puede relanzar sin necesidad de envolverla.
Documentación Relacionada