Nota sulla domanda: questo non è un duplicato, Prova efficiente / è stato chiesto l'utilizzo del blocco catch dopo questo. L'altra domanda è il duplicato.
Mi chiedevo quale fosse il modo migliore per usare try / catch. È meglio limitare al minimo il contenuto del blocco try o inserire tutto in esso?
Lasciami spiegare con un esempio:
Codice 1:
try {
thisThrowsAnException();
}
catch (Exception e) {
e.printStackTrace();
}
thisDoesnt();
Codice 2:
try {
thisThrowsAnException();
thisDoesnt();
}
catch (Exception e) {
e.printStackTrace();
}
Supponendo che thisThrowsAnException()
... beh ... possa generare un'eccezione e thisDoesnt()
... sono sicuro che l'hai ottenuto.
Conosco la differenza tra i due esempi: nel caso in cui venga rilevata l'eccezione, verrà chiamato thisDoesnt()
nel primo caso, non nel secondo. Poiché non importa per me, perché il lancio di tale eccezione significherebbe che l'applicazione dovrebbe fermarsi, perché si dovrebbe usare una versione migliore rispetto all'altra?