Junior — Middle
È possibile catturare eccezioni che non sono dichiarate esplicitamente nel codice?
sobes.tech AI
Risposta dell'AI
Sì, in Java è possibile catturare eccezioni che non sono esplicitamente dichiarate nel codice. In Java ci sono due tipi di eccezioni:
- Eccezioni controllate (checked) — devono essere dichiarate nella firma del metodo con
throwso gestite in un bloccotry-catch. - Eccezioni non controllate (unchecked) — sono sottoclassi di
RuntimeExceptioneError. Non è necessario dichiararle e possono essere catturate, anche se di solito non vengono gestite specificamente.
Ad esempio, si può catturare qualsiasi eccezione con catch (Exception e), anche se non dichiarata nel metodo:
try {
// codice che può generare un'eccezione
} catch (Exception e) {
// gestione di qualsiasi eccezione
}
In questo modo, si possono catturare tutte le eccezioni, ma per le eccezioni controllate, il compilatore richiede di dichiararle o gestirle.