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

文字列のENUM化

文字列をENUM化したいときの処理について リンク集です。 ENUMが文字だけのとき(key=>valueタイプでない時)、key=>valueタイプの時両方OKのようです。 enum 定 …

no image

JSFでのCSVダウンロード機能

JSF+CDIでCSVダウンロード機能を実装するときの処理です。 結構、汎用的でいろんなところででてきますね。 Contents1 コード2 参考リンク コード [crayon-5f7173c34e0 …

no image

リフレクション

前回のエントリーでは動的にクラスを使いまわす方法について書いたのですが、同様にリフレクション(動的にインスタンスを生成する方法)という技術についても学びました。 社長いわく黒魔術みたいなものといってい …

no image

型パラメータに関して その2

Javaでオブジェクト指向に基づいたコーディングをするために必須であり、最初の難関だったのが型パラメータでした。 Contents1 型パラメータが必要なケース2 型パラメータの制限3 クラスインスタ …

no image

依存ライブラリを含むプログラムのjar化に関して

以前、jar化する場合のpomの記述方法について書いたのですが、一部記述が正しくなかったようです。 mavenでのjarファイル作成 この方法でやってもjarファイルを単独で取り出すとNoClassD …