Фоновых
У меня есть случай, когда моя логика требует объемного звука попытаться/поймать, у меня есть много улова статей, что делает мой код немного некрасиво. То, что я делаю в catch, - это только log-ошибка с использованием log4j.
Вопрос Можно ли использовать одно предложение catch с родительским типом исключения вместо кластеров catch? Вместо этого:Verbose исключения уловов положения
try{
//some statements
} catch (KeyStoreException e) {
LOGGER.error(e);
} catch (CertificateException e) {
LOGGER.error(e);
} catch (NoSuchAlgorithmException e) {
LOGGER.error(e);
} catch (FileNotFoundException e) {
LOGGER.error(e);
} catch (IOException e) {
LOGGER.error(e);
} catch (UnrecoverableKeyException e) {
LOGGER.error(e);
} catch (NoPropertyFoundException e) {
LOGGER.error(e);
}
с помощью:
try{
//some statements
} catch (Exception e) {
LOGGER.error(e);
}
Какой из них лучше?
Если вы намерены поймать все подклассы данного класса исключений, то вполне разумно использовать этот класс (супер). Не исключено, что вы поймаете исключение, даже если вы перевернете те, которые не являются «хранителями» - это становится беспорядочным. (Было бы неплохо, если бы у Java было больше иерархии для исключений, чтобы облегчить их поиск.) –