Когда работаешь с файлами, потоками или подключениями к базе, ресурс нужно закрывать. Если забыть это сделать, приложение может начать держать лишние файлы, память или соединения.
Плохой вариант:
BufferedReader reader = Files.newBufferedReader(path);
String line = reader.readLine();
reader.close();
Если ошибка произойдёт до close(), ресурс может остаться открытым.
Лучше писать так:
try (BufferedReader reader = Files.newBufferedReader(path)) {
String line = reader.readLine();
}Java сама закроет ресурс после выполнения блока, даже если внутри произойдёт исключение.
Используй try-with-resources для файлов, потоков, сокетов и всего, что реализует AutoCloseable.
👉 Java Ready | #совет
