Sempre con un try/catch... o, più semplicemente, con una clausola catch supplementare.Originariamente inviato da onieliv
Salve a tutti,
nel mio programma ho gestito tutte le eccezioni previste (quelle per cui è lo stesso Eclipse a costringerti a gestirle via try/catch o throws) generando dei log.
Ci sono però alcune eccezioni, ad esempio la NullPointerException, che si possono verificare in qualsiasi momento (se ad esempio leggo dal DB una tabella vuota, e assegno il valore ad una variabile)
Come faccio ad "acchiappare" queste eccezioni ed a gestirle?
Grazie del consiglio
Mi pare, però, una inutile perdita di tempo gestire una NullPointerException tramite un try/catch. Nel senso che il programma dovrebbe già di per se contenere del codice adatto alla gestione di questi casi particolari. Se, ad esempio, richiami un metodo che può ritornare un valore "null", è onere del programmatore controllare che il valore ritornato non sia null.
Se viene sollevata una NullPointerException è evidente che il programma non sta tenendo conto di particolari situazioni... a quel punto ha ben poco senso "catturare" l'exception: conviene manutenere il programma (o verificarne i dati).codice:MioOggetto mo = metodo( ... ); if (mo != null) { ... // Vado avanti e uso l'oggetto } else { // Mi comporto di conseguenza }
PS: non è Eclispe che ti costringe a gestirle, è il compilatore... solo che Eclipse lo sa e te lo segnala.
Ciao.![]()



Rispondi quotando