什么是Java中的try-with-resource?

每当我们实例化并使用某些对象/资源时,都应显式关闭它们,否则有可能发生资源泄漏。

从JSE7开始,引入了try-with-resources语句。在这种情况下,我们在try块中声明一个或多个资源,这些资源在使用后将自动关闭。(在try块的末尾)

我们在try块中声明的资源应扩展java.lang.AutoCloseable类。

示例

以下程序演示了Java中的try-with-resources。

import java.io.File;

import java.io.FileInputStream;

import java.io.FileOutputStream;

import java.io.IOException;

public class FileCopying {

   public static void main(String[] args) {

      try(FileInputStream inS = new FileInputStream(new File("E:\\Test\\sample.txt"));

      FileOutputStream outS = new FileOutputStream(new File("E:\\Test\\duplicate.txt"))){

         byte[] buffer = new byte[1024];

         int length;

         while ((length = inS.read(buffer)) > 0) {

            outS.write(buffer, 0, length);

         }

         System.out.println("File copied successfully!!");

      }

      catch(IOException ioe) {

         ioe.printStackTrace();

      }

   }

}

输出结果

File copied successfully!!

以上是 什么是Java中的try-with-resource? 的全部内容, 来源链接: utcz.com/z/326498.html

回到顶部