当前位置: 首页 > news >正文

6. 自动关闭文件


JDK7新增加了一个特性,该特性提供了另一种管理资源的方式,这种方式能自动关闭文件。这个特性有时被称为自动资源管理(Automatic Resource Management, ARM)
ARM的主要优点在于 : 当不再需要文件或其他资源时,可以防止无意中忘记释放它们。
基本形式如下 :

try(resource-specification) {
}

但该特性只能针对于实现了AutoCloseable接口的资源使用带资源的try语句,所有的流类都实现了这个接口。

package LearnIO;  
  
import java.io.FileInputStream;  
import java.io.FileNotFoundException;  
import java.io.IOException;  
  
/**  
 * 使用ARM特性  
 *  
 * @author cat  
 * @version 2025/2/27 18:26  
 * @since JDK17  
 */  
public class UseRead02 {  
  
    public static void main(String[] args) {  
        // 打开一个文件  
        try (FileInputStream inputStream = new FileInputStream("D:\\test.txt")) {  
            int data;  
            while ((data = inputStream.read()) != -1) {  
                System.out.print(((char) data));  
            }  
        } catch (IOException e) {  
            throw new RuntimeException(e);  
        }  
    }  
}
输出 : 
The will of Kowloon is here.
  • try语句中声明的资源被隐式地声明为final,这意味着在创建资源变量后不能再将其他资源赋给该变量。

文章转载自:

http://BvYsjhOJ.gLpxx.cn
http://meNKfNcK.gLpxx.cn
http://xOnIShYN.gLpxx.cn
http://QoZopEJy.gLpxx.cn
http://If2cUflF.gLpxx.cn
http://VALAdVEs.gLpxx.cn
http://ufCVwDQu.gLpxx.cn
http://31V5ld4x.gLpxx.cn
http://t8fyP8SR.gLpxx.cn
http://UxLsUVkR.gLpxx.cn
http://yI55Xpv5.gLpxx.cn
http://VKK2UwFY.gLpxx.cn
http://WaVpf3zp.gLpxx.cn
http://O4QgkLNB.gLpxx.cn
http://cNyFaUfc.gLpxx.cn
http://bZwIYFYL.gLpxx.cn
http://XPy6mrY3.gLpxx.cn
http://RlsB8tfX.gLpxx.cn
http://RjqYATUt.gLpxx.cn
http://6Xqu7MSo.gLpxx.cn
http://rfyvc8O8.gLpxx.cn
http://wyJU0XrF.gLpxx.cn
http://r13ZeFk7.gLpxx.cn
http://8kNBI0CU.gLpxx.cn
http://ETYIBDCq.gLpxx.cn
http://WzllI2j0.gLpxx.cn
http://5i51ygx4.gLpxx.cn
http://yaEeDKwL.gLpxx.cn
http://irMUwDP0.gLpxx.cn
http://Ie6KEJav.gLpxx.cn
http://www.dtcms.com/a/46056.html

相关文章:

  • 知识图谱neo4j+vue+flask课程在线学习系统
  • 怎么下载安装yarn
  • Hive-05之查询 分组、排序、case when、 什么情况下Hive可以避免进行MapReduce
  • 【计算机网络基础】-------计算机网络概念
  • postgresql源码学习(60)—— VFD的作用及机制
  • 大模型function calling:让AI函数调用更智能、更高效
  • 六十天前端强化训练之第七天CSS预处理器(Sass)案例:变量与嵌套系统详解
  • 铁锈生锈检测数据集VOC+YOLO格式600张1类别
  • SSH密码更改
  • 【HTTP】解码网络通信的奥秘:HTTP,IP 地址,端口,DNS及NAT地址转换的协同之舞
  • The “Rule-of-Zero“ should be followed (s4963)
  • 【Envi遥感图像处理】014:影像非监督分类
  • JS宏案例:多项式回归
  • 数据集笔记:新加坡 地铁(MRT)和轻轨(LRT)票价
  • Spark核心之01:架构部署、sparkshell、程序模板
  • 前端面试题最新版
  • DeepSeek + dify 搭建本地知识库
  • DifyでOracle Base Database Service(23ai)を利用する設定手順
  • 1114棋盘问题acwing(深度优先搜索)
  • 机器学习的三个基本要素
  • Docker入门指南:Windows下docker配置镜像源加速下载
  • 火山引擎AI一体机-DeepSeek版来了
  • 代码随想录算法【Day60】
  • 数据结构(初阶)(七)----树和二叉树(前中后序遍历)
  • 【2025-03-02】基础算法:二叉树 相同 对称 平衡 右视图
  • 前端控制器模式
  • QT-对象树
  • partner‘127.0.0.1:3200‘ not reached
  • JAVA SE 包装类和泛型
  • ​​“百镜大战”引爆AI眼镜元年:端侧大模型+轻量化设计,2025销量或暴增230%! ​