Hey Comunidad StackOverflow,Excepciones de lanzamiento y captura
En cuanto a arrojar excepciones. En general, ¿cuándo tiro y la excepción, y cuándo la atrapo?
Digamos que me encuentro con esta situación en la que tengo que abandonar debido a algún problema que ocurrió y no me puedo recuperar. ¿Lanzo o atrapo?
hago esto ahora:
try {
// some code
}
catch (IOException e) {
logger.info("Failed to do something, and cannot continue" + e.getMessage(), e);
e.printStackTrace();
throw e;
}
Es esto lo que hay que hacer? ¿Sería más apropiado si lanzo la excepción? Lo siento, soy un novato en excepciones :)
Así que estás diciendo que si tengo una excepción que no puedo manejar dentro de ese método, debería lanzarla. Pero, si puedo recuperarme dentro del mismo método, entonces es cuando es apropiado atrapar dentro del método. Además, ¿debo dejar la excepción de captura de (métodos, pruebas) que implementan el método subyacente que la arrojó? –
sí, solo captas con qué puedes hacer algo. No entendí la última parte. ¿Podrías reformular eso? –
Lo siento, déjame intentarlo de nuevo. Lo que realmente quise decir es que cuando uso un método que arroja una excepción en alguna prueba unitaria o un método principal, y digamos que hago que la prueba arroje la excepción. ¿Qué pasa allí? ¿Se acaba de dejar? ¿Imprime mensajes de error? ¿Qué es lo más apropiado para hacer en esta situación? –