`
cakin24
  • 浏览: 1334065 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

Java 7新增机制——自动关闭资源的try语句

    博客分类:
  • java
阅读更多

1 自动关闭资源介绍

        Java 7增强了try语句的功能——它允许在try关键字后跟一对圆括号,圆括号可以声明,初始化一个或多个资源,此处的资源指得是那些必须在程序结束时必须关闭的资源(比如数据库连接,网络连接等),try语句在该语句结束时自动关闭这些资源。

        为了保证try语句可以正常关闭资源,这些资源实现类必须实现Closeable或AutoCloseable接口,实现这些类就必须实现close方法。

 

2 代码示例

import java.io.*;

public class AutoCloseTest
{
	public static void main(String[] args)
		throws IOException
	{
		try (
			// 声明、初始化两个可关闭的资源
			// try语句会自动关闭这两个资源。
			BufferedReader br = new BufferedReader(
				new FileReader("AutoCloseTest.java"));
			PrintStream ps = new PrintStream(new
				FileOutputStream("a.txt")))
		{
			// 使用两个资源
			System.out.println(br.readLine());
			ps.println("庄生晓梦迷蝴蝶");
		}
	}
}

 

3 运行结果

E:\test\Java\Java8\ExceptionTEST\src>java AutoCloseTest
import java.io.*;

文件a.txt中生成

庄生晓梦迷蝴蝶

 

4 结果分析

try后的小括号分别声明,初始化两个IO流,由于BufferedReader,PrintStream都实现了Closeable接口,而且它们放在try语句中声明和初始化,所有try语法会自动关闭它们。因此上面的代码是安全的。

0
0
分享到:
评论

相关推荐

    18.java自动关闭资源的try语句.zip

    18.java自动关闭资源的try语句.zip18.java自动关闭资源的try语句.zip18.java自动关闭资源的try语句.zip18.java自动关闭资源的try语句.zip18.java自动关闭资源的try语句.zip18.java自动关闭资源的try语句.zip18.java...

    19.java嵌套的try…catch语句.zip

    19.java嵌套的try…catch语句.zip19.java嵌套的try…catch语句.zip19.java嵌套的try…catch语句.zip19.java嵌套的try…catch语句.zip19.java嵌套的try…catch语句.zip19.java嵌套的try…catch语句.zip19.java嵌套的...

    浅谈java7增强的try语句关闭资源

    下面小编就为大家带来一篇浅谈java7增强的try语句关闭资源。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

    17.javatry…catch…finally语句.zip

    17.javatry…catch…finally语句.zip17.javatry…catch…finally语句.zip17.javatry…catch…finally语句.zip17.javatry…catch…finally语句.zip17.javatry…catch…finally语句.zip17.javatry…catch…finally语句...

    3, Java核心技术1 带资源声明的 try 语句

    try-with-resources 语句中的资源只能是实现了java.lang.AutoCloseable接口的类实例,但是 Java SE 7 之後的所有实现了java.io.Closeable的类都实现了java.lang.AutoCloseable接口(该接口是在Java SE 7中才引入的)...

    dta0502#data-analysis#Python基础——try与except处理异常语句1

    # Python基础——try与except处理异常语句try/except介绍默认情况下,在程序段的执行过程中,如果没有提供try/except的处理,脚本文

    Java使用 try-with-resources 实现自动关闭资源的方法

    主要介绍了Java使用 try-with-resources 实现自动关闭资源的方法,本文通过示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

    关于java try()的括号中代码含义(实现Closeable接口)(csdn)————程序.pdf

    关于java try()的括号中代码含义(实现Closeable接口)(csdn)————程序

    《疯狂Java讲义》随书光盘

    本书深入介绍了Java编程的相关方面,全书内容覆盖了Java的基本语法结构、Java的...本书全面介绍了Java7的二进制数、棱形语法、增强switch语句、多异常捕获、自动关闭资源的try语句、JDBC4.1新特性、NIO.2、AIO等新特性

    疯狂Java讲义 第3版 完整版(Part3)

    本书深入介绍了Java编程的相关方面,全书内容覆盖了Java的基本语法结构、Java...本书全面介绍了Java7的二进制数、棱形语法、增强switch语句、多异常捕获、自动关闭资源的try语句、JDBC4.1新特性、NIO.2、AIO等新特性。

    Java讲义(第2版)

    深圳电信培训中心徐海蛟博士 Java/JavaEE 教学用的参考资料。...本书全面介绍了Java 7的二进制整数、菱形语法、增强switch语句、多异常捕获、自动关闭资源的try语句、JDBC4.1新特性、NIO.2、AIO等新特性。

    java try…catch嵌套捕获异常的实例

    java try…catch嵌套捕获异常的实例 java try…catch嵌套捕获异常的实例

    疯狂Java讲义 第3版 完整版(Part2)

    本书深入介绍了Java编程的相关方面,全书内容覆盖了Java的基本语法结构、Java...本书全面介绍了Java7的二进制数、棱形语法、增强switch语句、多异常捕获、自动关闭资源的try语句、JDBC4.1新特性、NIO.2、AIO等新特性。

    java中try catch的用法

    java中try catch的用法 java try catch的用法 java中 try catch的用法

    Java 语言基础 —— 非常符合中国人习惯的Java基础教程手册

    第一条语句说明了对象 today 属于 Date 类,第二条语句说明了对象 myRectangle 属于 Rectangle 类。对象说明并没有体现一个具体的对象,只有通过实例化后的对 象才能被使用。 2. 实例化对象 实例化对象就是创建一个...

    Java如何优雅地关闭资源try-with-resource及其异常抑制

    主要介绍了Java如何优雅地关闭资源try-with-resource及其异常抑制,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

    c#编程——自动浏览器v2

    自动浏览器v2 较前一版本实现了分组功能。 本自动浏览器的功能: 单次或循环访问批量网页 可以手动修改文件autobrowser\bin\Debug\urls.xml来修改网址。 <UG>1</UG> //组名 <UN>nathen</UN> //链接名 ...

    JAVA程序设计——异常和断言

    定义异常 使用try、catch 和 finally 语句 描述异常分类 识别普通异常 编写程序自己处理异常 使用断定 区分适当喝不适当的断定的使用 运行时屏蔽断定

    Delphi异常处理try_except语句和try_finally语句用法以及区别.pdf

    Delphi异常处理try_except语句和try_finally语句用法以及区别.pdf Delphi异常处理try_except语句和try_finally语句用法以及区别.pdf

    python如何写try语句

    在本篇文章里小编给大家整理的是一篇关于python写try语句的方法相关内容,有兴趣的朋友们可以跟着学习参考下。

Global site tag (gtag.js) - Google Analytics