Back to questions
Junior — Middle
61
Каким образом можно обеспечить автоматическое освобождение ресурсов в программе?
Answer from AI
sobes.tech AI
В Java автоматическое освобождение ресурсов обычно обеспечивается с помощью конструкции try-with-resources, которая была введена в Java 7. Она позволяет автоматически закрывать ресурсы, реализующие интерфейс AutoCloseable (например, потоки ввода-вывода, соединения с базой данных и т.д.) после завершения блока try, даже если внутри блока возникло исключение.
Пример:
try (BufferedReader reader = new BufferedReader(new FileReader("file.txt"))) {
String line = reader.readLine();
System.out.println(line);
} catch (IOException e) {
e.printStackTrace();
}
// reader автоматически закрывается здесь
Ранее для освобождения ресурсов использовали блок finally, где явно вызывали метод close(). Но try-with-resources делает код чище и безопаснее.