展开
拓展 关闭
订阅号推广码
GitHub
视频
公告栏 关闭

Jdk7新特性try-with-resources

  • jdk7之前的操作
public static void main(String[] args) throws IOException {
String path = "/Users/jack/Desktop/t.txt";
test(path);
}
private static void test(String filepath) throws FileNotFoundException {
OutputStream out = new FileOutputStream(filepath);
try {
out.write((filepath+"可以学习java架构课程").getBytes());
} catch (Exception e) {
e.printStackTrace();
}finally {
try {
out.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
  • 使用try-with-resources,自动关闭
public class Main {
public static void main(String[] args) throws Exception {
String path = "/Users/xdclass/Desktop/t.txt";
test(path);
}
private static void test(String filepath) {
try(OutputStream out = new FileOutputStream(filepath);) {
out.write((filepath+"可以学习java架构课程").getBytes());
}catch (Exception e){
e.printStackTrace();
}
}
}
  • 注意点
1、实现了AutoCloseable接⼝的类,在try()⾥声明该类实例的时候,try结束后⾃动调⽤的close⽅法,这个动作会早于finally⾥调⽤的⽅法
2、不管是否出现异常,try()⾥的实例都会被调⽤close⽅法
3try⾥⾯可以声明多个⾃动关闭的对象,越早声明的对象,会越晚被close掉
posted @   DogLeftover  阅读(15)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 字符编码:从基础到乱码解决
· 提示词工程——AI应用必不可少的技术
历史上的今天:
2021-08-25 vue常见错误
点击右上角即可分享
微信分享提示