try-with-resources
Коротко: Языковая конструкция, гарантирующая, что открытый ресурс (файл, соединение с базой данных, сетевой сокет) снова автоматически закрывается — даже если тем временем возникло исключение.
Подробнее: Без этой конструкции закрытие ресурса приходится делать вручную в блоке finally, что легко забыть, и это приводит к утечкам ресурсов (например, файл остаётся открытым, хотя программа с ним закончила). try-with-resources берёт на себя автоматическую очистку для любого ресурса, реализующего подходящий интерфейс.
Подробности
До try-with-resources (или в языках без…)
См. также: исключения, файлы