Java 9试用资源改进 Java 9 Stream API改进 Java 9增强了@Deprecated注释 try-with-resources语句是一个包含正确声明的一个或多个资源的try语句。这里资源是一个对象,一旦不再需要它就应该关闭。try-with-resources语句确保在需求完成后关闭每个资源。任何实现java.lang.AutoCloseable或java.io.Closeable接口的对象都可以用作资源。 在Java9之前,资源将在try或try语句之前声明,如下面给出的示例所示。在这个例子中,我们将使用BufferedReader作为资源来读取一个字符串,然后BufferedReader被关闭。 Tester.java import java.io.BufferedReader; import java.io.IOException; import java.io.Reader; import java.io.StringReader; public class Tester { public static void main(String[] args) throws IOException { System.out.println(readData("test")); } static String readData(String message) throws IOException { Reader inputString = new StringReader(message); BufferedReader br = new BufferedReader(inputString); try (BufferedReader br1 = br) { return br1.readLine(); } } } 输出 test 这里我们需要在try语句中声明资源br1,然后使用它。在Java9中,我们不需要再声明br1,下面的程序会给出相同的结果。 Tester.java import java.io.BufferedReader; import java.io.IOException; import java.io.Reader; import java.io.StringReader; public class Tester { public static void main(String[] args) throws IOException { System.out.println(readData("test")); } static String readData(String message) throws IOException { Reader inputString = new StringReader(message); BufferedReader br = new BufferedReader(inputString); try (br) { return br.readLine(); } } } 输出 test Java 9 Stream API改进 Java 9增强了@Deprecated注释