Gestione multi-catch delle eccezioni
Cattura più tipi di eccezione in un singolo blocco catch.
Confronto Codice
✕ 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);
}
Vedi un problema con questo codice? Faccelo sapere.
Perché vince l'approccio moderno
DRY
La stessa logica di gestione scritta una volta invece di tre.
Rilanciabile
L'eccezione catturata può essere rilanciata con il suo tipo preciso.
Scansionabile
Tutti i tipi gestiti sono visibili in un posto.
Approccio Vecchio
Blocchi catch separati
Approccio Moderno
Multi-catch
Dal JDK
7
Difficoltà
Principiante
Supporto JDK
Gestione multi-catch delle eccezioni
Disponibile
Ampiamente disponibile dal JDK 7 (luglio 2011)
Come funziona
Multi-catch gestisce più tipi di eccezione con lo stesso codice. La variabile eccezione è effettivamente final, quindi puoi rilanciare senza wrapping.
Documentazione Correlata