java关闭流的两种方法

这篇具有很好参考价值的文章主要介绍了java关闭流的两种方法。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

java关闭流的两种方法

当使用完流后,关闭所有打开的流仍然是一个好习惯。一个被打开的流有可能会用尽系统的资源,这取决于平台和实现。如果没有将流关闭,另一个程序试图打开另一个流时,可能会得到不需要的资源。

有两种关闭方式:

​ 如下:

jdk1.7之前

方法一:手动关闭,即为使用close(),部分代码如下:

FileWriter fw = null;
try {
	fw = new FileWriter("test\\test.txt");
    fw.write("test");
 }catch (Exception e) {
 	e.printStackTrace();
 }finally {
   // 
    if(fw != null) {
        try {
            fw.close(); // 关闭
        } catch(IOException e) {
            e.printStackTrace();
        }
    }
}

java 关闭流,java,java,开发语言,java-ee,intellij-idea,后端

jdk1.8

方法二:自动关闭,即为使用try语句自动关闭流,部分代码如下:

// 直接在try()中创建流对象 会默认关闭
try(FileWriter fw = new FileWriter("test.txt")) {
    fw.write("test");
} catch(Exception ex) {
    ex.printStackTrace();
}//try..catch语句结束后自动关闭

java 关闭流,java,java,开发语言,java-ee,intellij-idea,后端

编译后文件:

java 关闭流,java,java,开发语言,java-ee,intellij-idea,后端

注:可以使用该方式关闭流的前提是对象一定要实现AutoCloseable接口,其原理还是在编译的时候JDK给我们生成了finally来关闭流

java 关闭流,java,java,开发语言,java-ee,intellij-idea,后端文章来源地址https://www.toymoban.com/news/detail-535327.html

到了这里,关于java关闭流的两种方法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Java简化MongoDB编解码器的两种方法

    在与MongoDB进行数据交互时,有时候会遇到找不到类的编解码器(codec)的错误。为了解决这个问题,一种常见的方法是创建自定义编解码器来处理特定的类。然而,对于一些开发者来说,这样的方法可能过于繁琐。本文将介绍两种简化MongoDB编解码器的方法,让您能够更轻松地

    2024年02月15日
    浏览(44)
  • 线程方法接收参数示例,Java的两种线程实现方式区别

    总所周知,Java实现多线程有两种方式,分别是继承Thread类和实现Runable接口,那么它们的区别是什么? 继承 Thread 类: 通过继承 Thread 类,你可以创建一个直接表示线程的类。你可以覆盖 Thread 类中的 run 方法来定义线程的逻辑。当调用 start 方法启动线程时,会执行该类中的

    2024年02月11日
    浏览(41)
  • Java对URL进行编码和解码的两种方法

    1.使用java.net.URLEncoder和java.net.URLDecoder类 上述代码中,使用URLEncoder.encode方法将URL进行编码,指定编码方式为UTF-8,生成编码后的URL字符串。使用URLDecoder.decode方法将编码后的URL字符串进行解码,指定解码方式为UTF-8,生成解码后的URL字符串。 2.使用java.nio.charset.StandardCharsets和

    2024年02月11日
    浏览(51)
  • 【Java】将String转换为char,[]char的两种方法

    使用Java处理字符串中的部分数据,有时不如对字符数组处理起来方便,为此,笔者结合实际操作,介绍两种类型转换的方法。 使用 String.charAt(index) (返回值为char)可以得到String中某一指定位置的char。 使用 String.toCharArray() (返回值为char[])可以得到将包含整个String的char数

    2024年02月12日
    浏览(48)
  • java调用js文件的两种方法(支持V8引擎)

    对java逆向感兴趣的盆友可以关注我以前的文章,有图片验证码识别、AES、SHA256等各种加密的java实现,不定时更新常用算法和加密,欢迎一起交流讨论! 在日常逆向中,一些前端的加密代码用java复现出来比较难,所以经常需要调用js文件来实现加密操作,接下来将介绍两种常

    2024年02月10日
    浏览(32)
  • 线程方法接收参数和返回参数,Java的两种线程实现方式对比

    总所周知,Java实现多线程有两种方式,分别是继承Thread类和实现Runable接口,那么它们的区别是什么? 继承 Thread 类: 通过继承 Thread 类,你可以创建一个直接表示线程的类。你可以覆盖 Thread 类中的 run 方法来定义线程的逻辑。当调用 start 方法启动线程时,会执行该类中的

    2024年02月11日
    浏览(42)
  • 【Java|多线程与高并发】线程的中断的两种方法

    线程中断是指在一个线程执行的过程中,强制终止该线程的执行。虽说是中断,但本质上是让run方法快点执行完,而不是run方法执行到一半,强制结束. 本文主要介绍线程中断的两种方法 看下面这段代码: 运行结果: 看下面这张图: 在这段代码中,定义了一个 flag 的标志位,在 线程

    2024年02月08日
    浏览(40)
  • 使用c语言编程时输入具体的年份和月份,求月份的天数的两种编程方法

    方法一:使用if……else语句  方法二:使用switch语句 考虑到一些读者需要相关资料和解决一些疑问,因此我新建立了一个学习交流群,我在群文件里上传了一些资料,需要的读者可以入群下载。 群中文件资料我会时常更新,主要资料是51单片机开发、32单片机开发、编程、嵌

    2024年02月11日
    浏览(62)
  • 交换排序的两种方法

    C语言实现交换排序的两种方法:冒泡排序和快排。 冒泡排序:冒泡排序十分简单,在这里简要分析: 算法步骤: 比较相邻的元素。如果第一个比第二个大,就交换他们两个。 对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。这步做完后,最后的元素会是

    2023年04月24日
    浏览(36)
  • C语言字符串的两种定义方式

    C语言中 初始化一个字符串有两种定义方式: 第一种为 char str[] = \\\"hello\\\"; 或者 char str[] = {\\\'h\\\',\\\'e\\\',\\\'l\\\',\\\'l\\\',\\\'o\\\',\\\'\\0\\\'}; 第二种为 char *str = \\\"hello\\\"; 两种的区别如下: char str[] 将字符串定义为字符串变量 (可读可写)而 char *str 将字符串定义为字符串常量 (只读) 程序运行结果如下:  

    2023年04月08日
    浏览(33)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包