【初心者向けにわかりやすく】Javaでのfinallyの必要性と使い方

finally
  • このエントリーをはてなブックマークに追加
  • Pocket

このページではJavaのfinallyについてお伝えする。

finallyは例外が発生してもしなくても実行したい処理を書くために使う構文だ。try catchを使っていれば必ず使う場面がある。

この際に理解して、覚えてしまおう。

finallyの必要性

Javaのtry catch文には「finally」ブロックを付けることができる。

finallyは読んで字のごとく、最後に実行されるものを指定するための構文だ。

例外が発生しcatchされてもされなくても必ず行われる処理を書くことができる。

プログラミングではデータベースを開いたり、ファイルを開いたりした場合、それを閉じてコンピュータのリソースを解放しなければならないが、そのような処理は例外が起きても起きなくてもしなければならない処理であるため、finallyに書かれることが多い。

finallyはあくまでも最後に実行するものがあれば書けばいい。finallyは使用しなくてもコンパイルエラーになったりはしない。

finallyの記述方法

finallyは次のように記述する。

try {
  正常終了;
} catch(例外クラス 変数名) {
  例外処理;
} finally {
  例外の発生に関係なく実行する処理;
}

finallyを使用しなくても、tryブロックとcatchブロックに同じ処理を書けば、finallyと同じ処理を行うことは可能であるが、同じコードを2つ書かなければならない。

finallyを使用する場合と使用する場合のサンプルプログラムを比較してみよう。

finallyを使用しない場合

上記のサンプルプログラムでは、「sample.txt」というファイルが存在してもしなくても、「最後に行いたい処理です」という出力を行うことができる。

ただ、①と②は全く同じコードであるため、修正したい場合は2箇所の修正が必要になってしまうため、プログラムとしてよろしくない書き方といえる。

finallyを使用する場合

上記サンプルプログラムの①でfinallyブロックを作成することにより、②の処理が必ず最後に行われる。finallyを使用しない場合と比較して、同じ処理を2つ書く必要性も無く、読みやすく、修正もしやすい書き方になるだろう。

まとめ

このページではJavaでのfinallyの使い方をお伝えした。

try catchを使っていく上で、必ず使うことになる構文だ。ぜひ理解して使いこなせるようにしておこう。

  • このエントリーをはてなブックマークに追加
  • Pocket

このページの続きや関連ページは下記から一覧で確認できる。

短期間でエンジニアになる方法

・「まったくの初心者だけどエンジニアになりたい!」

・「プログラマーとして転職をしたい!」

という方はリナックスアカデミーの資料を見てみてください。短期間で未経験からエンジニアになることができるスクールとして15年間選ばれ続けてきた理由やノウハウが載った資料です。

エンジニアの入り口に立つために必要な勉強技術の最新動向本当に使えるIT資格学習に役立つ国からの奨励金などの情報が詰まっています。

無料で2,3日中にお手元にお届けします。


資料を見てみる

SNSでもご購読できます。

コメントを残す

*