skillup

技術ブログ

Java

try-with-resourceの使い方

投稿日:2015年7月18日 更新日:

先日ファイル入出力の処理をいろいろと書いていたところ、例外処理について社長からアドバイスをいただきました。

ファイルの入出力について

ファイルの入出力を行う場合、ストリームで接続口を開いた場合、IOExceptionが発生した場合もそうでない場合も下記のように接続口を閉じる必要があります。

try-with-resource

上記のような表記が冗長のため、下記のようにtry文の開始に入力処理を書いておけば、自動で閉じてくれます。

ちなみにストリームが2か所あっても下記のように改行して、つなげれば問題ありません。

この記述自体はよく見かけていたのですが、これがtry-with-resourceという表現だとはしりませんでした。うーん不勉強・・・

参考リンク

 http://docs.oracle.com/javase/jp/7/technotes/guides/language/try-with-resources.html

Java7 体当たり/try-with-resources Statement

Java7のtry-with-resources構文でcloseし忘れを防ぐ

Java: try-with-resources で catch 節を使う

-Java
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

イテレーターに関して

Javaの繰り返しでイテレーターという概念がありますね。 今はあまり使われなくなっているようですが、資格の勉強をしていたら出てきたのと、たしなみとして知っておく必要があるため、記述します。 ソース [ …

no image

JPAでのリレーション(アノテーション使用)

JPAでリレーションを管理するとき、最初はアノテーションでやろうとしたんですが、結局やり方がわからずコンストラクタ式をかいて対処してました。 JPAでのリレーションに関して 外部キー制約があるやり方は …

no image

mavenでのjarファイル作成

ここ半年Javaを触っていますが、9割以上がWEBアプリでバッチ系のものを作る機会から外れていました。 今回バッチを作っており、IDEでは動くのにいざコンソールで動かそうと思ったら動かないということが …

no image

Annnotationについて その2

Java(JavaEE)をやりだして半年ぐらいたつんですが、個人的に鬼門だとおもっていたのが下記内容です。 MVCではないコンポーネントの考え方 クラスを使ったジェネリクスの使い方(型パラメータなど) …

no image

配列の参照の仕方

変数が存在しているにもかかわらず値が入っていないときは、プログラミングではNULLという表記をします。(ちなみに空白が入っているのとは違います。) これはプログラマにとってはほぼ常識的な内容なのですが …

アーカイブ