Что такое 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

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (Пока оценок нет)
Adblock
detector