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();
}
}
}
jdk1.8
方法二:自动关闭,即为使用try语句自动关闭流,部分代码如下:
// 直接在try()中创建流对象 会默认关闭
try(FileWriter fw = new FileWriter("test.txt")) {
fw.write("test");
} catch(Exception ex) {
ex.printStackTrace();
}//try..catch语句结束后自动关闭
编译后文件:
注:可以使用该方式关闭流的前提是对象一定要实现AutoCloseable接口,其原理还是在编译的时候JDK给我们生成了finally来关闭流文章来源:https://www.toymoban.com/news/detail-535327.html
文章来源地址https://www.toymoban.com/news/detail-535327.html
到了这里,关于java关闭流的两种方法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!