Встречается на собеседованиях • сегодня
Всегда ли закроются ресурсы в блоке finally у try/catch
Блок finally гарантированно выполнится, но ресурсы не закроются автоматически. Для корректного закрытия ресурсов нужно явно вызывать .close() в finally или использовать try-with-resources (Java 7+), который автоматически закрывает ресурсы, реализующие AutoCloseable.
Пример без автоматического закрытия:
java
FileInputStream fis = null;
try {
fis = new FileInputStream("file.txt");
// работа с файлом
} finally {
if (fis != null) {
fis.close(); // нужно закрывать вручную
}
}Пример с try-with-resources (рекомендуемый способ):
java
try (FileInputStream fis = new FileInputStream("file.txt")) {
// работа с файлом
} // ресурс закроется автоматическиВажно: если в finally произойдет исключение при закрытии, оно может перезаписать оригинальное исключение.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы