Что такое try-with-resources в Java?
Справа try-with-resources, представленная на Java 7, хорошая функция обработки исключений. Это оператор try, который объявляет один или несколько ресурсов. Он был введен из-за того, что некоторые ресурсы, используемые в Java (например, SQL-соединения или потоки), трудно обрабатывать должным образом.
import Java.util.*;
import Java.io.*;
public class TestClass{
public static void main(String[] args) {
try {
FileReader fileReader = new FileReader("D:\\test.txt");
int chr = fileReader.read();
while(chr != -1) {
System.out.print((char) chr);
chr = fileReader.read();
}
if(fileReader != null) {
fileReader.close();
}
}
catch (IOException e){
e.printStackTrace();
}
finally{
// код здесь
}
}
}
Замена try-catch-finally с помощью try-with-resources
Новая функция try-with-resources заключается в замене традиционного и подробного блока try-catch-finally. Реализация ресурса должна выполняться в try(). Скобка() вводится после утверждения try, и экземпляр ресурса должен происходить в пределах этой скобки, как показано ниже:
import Java.util.*;
import Java.io.*;
public class TestClass{
public static void main(String[] args) {
try (FileReader fileReader = new FileReader("D:\\test.txt");){
int chr = fileReader.read();
while(chr != -1) {
System.out.print((char) chr);
chr = fileReader.read();
}
}
catch (IOException e){
e.printStackTrace();
}
}
}
Ресурсы автоматически закрываются после попытки. В списке ресурсов try вы можете объявить несколько ресурсов, но все эти ресурсы должны реализовать интерфейс Java.lang.AutoCloseable.
Источник: http://net-informations.com/Java/cJava/resources.htm
