見出し画像

リソースを宣言するtry文

こんな便利なtry文があったのか!と感動したので、覚書。
先輩のコードを参考にしていたらcatchもfinallyもないtry文を発見して調べた&教えてもらいまいした。
try-with-resourcesというらしい。
通常のtry文に必要なオブジェクトのclose処理の記載が不要になる。

Java7位から実装されていたみたい、知らなかった。

通常のtry

try {
    BufferedWriter bw = new BufferedWriter(
        new OutPutStreamWriter(new FileOutPutStream("C:\\test.csv"), "UTF-8"));
    bw.write("test");
    
  } finally {
    if (bf != null) {
        bf.close();
    }
  }

try-with-resources

try (BufferedWriter bw = new BufferedWriter(
    new OutPutStreamWriter(new FileOutPutStream("C:\\test.csv"), "UTF-8"));) {
    bw.write("test");
}

普段注意していても忘れがちなclose処理をしてくれるし、コードも短くきれいになってうれしい。

参考サイト


この記事が気に入ったらサポートをしてみませんか?