码迷,mamicode.com
首页 > 编程语言 > 详细

java7(3)——增强的catch之自动释放资源

时间:2014-08-02 01:47:02      阅读:195      评论:0      收藏:0      [点我收藏+]

标签:style   blog   color   java   使用   os   strong   io   

  跟mutilcatch一样,java7提供了自动释放资源的方法,但还是很少看到人使用,估计是麻烦去重写close方法。不过jdk内部一些类已经改成使用增强的catch来释放资源的写法,所以我们有必要了解一下这个功能。

  顾名思义,自动释放资源就是我们不用再在fianlly里面去close掉资源了,close这个步骤有程序底层自动完成。

  举个栗子:

  【要自动释放资源的类】:

1 public class CustomResource implements AutoCloseable {
2 
3  @Override
4    public void close() throws Exception {
5       System.out.println("资源已释放");
6    }
7 }

  观察可知,要让某类具有自动关闭资源的功能,首先必须实现AutoCloseable接口,其次重写其close方法。  

  【测试类】:

1  public void testAutoResource() throws Exception{
2     try(CustomResource c = new CustomResource()     //这里写资源的申请。
3     ){
4         System.out.println("使用资源"); // 这里写对资源的操作。
5     }
6  }

  用法是在try()里面 new 出 “自动释放资源类”。

  【结果打印】:

使用资源
资源已释放

 

java7(3)——增强的catch之自动释放资源,布布扣,bubuko.com

java7(3)——增强的catch之自动释放资源

标签:style   blog   color   java   使用   os   strong   io   

原文地址:http://www.cnblogs.com/xiaoMzjm/p/3886068.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!