`

jdk1.7之 try-catch-resource

阅读更多
JDK 1.7 引入了 java.lang.AutoCloseable 接口,用来自动关闭像InputStream,OutputStream这样的一些资源,只要该类实现了此接口 就可以使用 try-catch-resource 块将声明部分包括在其中,执行完毕后资源会自动关闭,没有必要再去写 in.close() 类似的代码。
这样的好处是:在手动释放jdbc连接的时候,需要关闭 Connection,Statement,ResultSet 这样的资源,需要嵌套多个try-catch。

使用方式: 多个语句之间用分号分隔

一个简单的读取文件的例子:


public class TryCatch {

	public static void main(String[] args) throws Exception {
		
		File file = new File("/devlp/file.txt");

		try (FileInputStream fis = new FileInputStream(file); 
			InputStreamReader reader = new InputStreamReader(fis);

		) {      
			char[] buffer = new char[1024];
			int read =0;
                  while((read =reader.read(buffer))!=-1){
                	   System.out.println(new String(buffer,0,read));
                  }
		}

	}
}
分享到:
评论

相关推荐

    JDK1.7免安装版

    - **多catch语句块(Multiple Catch Blocks)**: 允许在一个`try-catch`块中捕获多种类型的异常,简化了异常处理代码。 - **钻石操作符(Diamond Operator)**: 自动推断构造函数中的泛型类型,如`new ArrayList()...

    jdk-7u80-windows-x64.exe

    2. **尝试-finally 改进**: 在Java 7中,`try-catch-finally`语句块得到了优化,允许在`try`块中定义多个资源,它们会在`finally`块中自动关闭,这就是所谓的"自动资源管理"(Automatic Resource Management, ARM)...

    JDK.rar_jdk1.7

    在JDK 1.7之前,Java程序员需要为每种可能抛出的异常分别写一个catch块。1.7引入了多catch语句,允许开发者在一个catch块中处理多个不同类型的异常,提高了代码的可读性和简洁性。 ```java try { // 代码块 } ...

    FileDownload.java

    代码用扫描工具扫出来问题,发现是try-catch-finally的另一种写法try-with-resource,发现这种写法优雅,代码量减少1/3(finally里面不用写close)这样就看的不那么臃肿了。因为上传,下载的时候有可能会创建input ...

    hadoop-2.6.0-cdh5.7.0.tar.gz和jdk-7u80-linux-x64.tar.gz安装包

    Java 7引入了一些重要特性,如try-with-resources语句、多catch块、动态类型语言支持(invokedynamic)等,提升了开发效率和代码质量。 为了在Linux环境中安装这两个组件,你需要按照以下步骤操作: 1. 首先,解压...

    springmybatis

    mybatis 的开发环境搭建,选择: eclipse j2ee 版本,mysql 5.1 ,jdk 1.7,mybatis3.2.0.jar包。这些软件工具均可以到各自的官方网站上下载。 首先建立一个名字为 MyBaits 的 dynamic web project 1. 现阶段,你可以...

Global site tag (gtag.js) - Google Analytics