Это конструкция, введенная в Java 7, позволяющая автоматически закрывать ресурсы (объекты, реализующие интерфейс java.lang.AutoCloseable), которые были открыты в блоке try.
java
java
Преимущества использования try-with-resources:
finally для закрытия ресурсов.try, и при автоматическом закрытии ресурса, то исключение из блока try будет выброшено, а исключение при закрытии будет подавлено (suppressed) и добавлено к основному исключению. Доступ к подавленным исключениям можно получить с помощью метода Throwable.getSuppressed().Ресурсы, которые можно использовать с try-with-resources, должны реализовывать интерфейс java.lang.AutoCloseable (или его подтип java.io.Closeable). Интерфейс AutoCloseable имеет один метод close(), который может выбрасывать исключение Exception.