try {
try (BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(
new FileOutputStream(FILENAME), "UTF8"))) {
bw.write(UNICODE_STRING);
bw.flush();
}
} catch (UnsupportedEncodingException | FileNotFoundException ex) {
Logger.getLogger(UnicodeWriteExample.class.getName())
.log(Level.SEVERE, null, ex);
} catch (IOException ex) {
Logger.getLogger(UnicodeWriteExample.class.getName())
.log(Level.SEVERE, null, ex);
}
Имеется ли смысл вкладывать try{} в еще один try{} ? Ведь можно было обойтись одним
В вашем случае код можно переписать таким образом (убрав один try) :
try (BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(
new FileOutputStream(FILENAME), "UTF8"))) {
bw.write(UNICODE_STRING);
bw.flush();
} catch (UnsupportedEncodingException | FileNotFoundException ex) {
Logger.getLogger(UnicodeWriteExample.class.getName())
.log(Level.SEVERE, null, ex);
} catch (IOException ex) {
Logger.getLogger(UnicodeWriteExample.class.getName())
.log(Level.SEVERE, null, ex);
}
Но т.к у вас выполняются абсолютно одинаковые действия, то не имеет смысла ловить исключения разных типов:
try (BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(
new FileOutputStream(FILENAME), "UTF8"))) {
bw.write(UNICODE_STRING);
bw.flush();
} catch (Exception ex) {
Logger.getLogger(UnicodeWriteExample.class.getName())
.log(Level.SEVERE, null, ex);
}
В общем случае конструкций вида : try try catch catch желательно избегать, т.к такой код трудно читать.
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости