047-例外処理-単純な例外処理 【新人エンジニアが最初に覚えたい100のJava文法】
ユーチューブ動画
単純な例外処理について解説します。
ソースコード
try{ FileWriter fw = new FileWriter(FILE_PATH); BufferedWriter bw = new BufferedWriter(fw); bw.write("abc"); bw.close(); }catch(IOException e){ e.printStackTrace(); }
解説
単純な例外処理について解説します。
例外とは、通常の処理を継続できない状態を示します。
Javaでは、ファイルの入出力やデータベース処理などで処理が継続できない可能性があるため、例外処理と呼ばれる文法を使います。
それがtry-catch構文です。
単純な例外処理では、tryのブロックに例外が発生する可能性がある処理を記述し、catchの()の中に例外の種類、catchのブロックに例外が発生したときの処理を記述します。
また例外が発生してもしなくても実行するブロックにfinallyがあります。このブロックはファイルの切断やデータベースの切断などに用いられます。
サンプルコードでは、e.printStackTraceというメソッドが呼び出されています。
例外が発生したときに、どこで例外が発生したのかその流れを出力するメソッドです。
catchブロックを空にしてしまうと、何が例外かわからなくなってしまうので、最低限の処理として、printStackTraceというメソッドを記述する場合があります。
さて、今回は、FileWriterやBufferedWriterクラスなど、聞き慣れないクラスが登場しました。これらは入出力のAPIになります。
詳しくは入出力編の動画で解説しますが、ここでは例外処理に注目して、解説します。
JavaSE のAPIドキュメントでBufferedWriterクラスのwriteメソッドを確認すると、例外IOExceptionが発生と定義されています。
このようにAPIを利用するときには、「〜のような例外が発生する」とすでに定義されています。
よって、APIを利用するときには特に例外について注意しなければいけません。
例えばこの入出力処理でtry-catchキャッチの構文をとってしまうと、ご覧のようにコンパイルエラーになります。
すべての例外でコンパイルエラーが発生するわけではありませんが、このような場合、どうしてもtry-catchキャッチの構文が必要になるのです。
統合開発環境のEclipseには便利な機能が用意されています。
範囲選択して、右クリックし、囲むからtry/catchブロックを選択すると、自動的に例外の種類を認識して、try-catchブロックを作ってくれます。
たいへん便利な機能です。
まずは、例外処理という仕組みはtry-catchブロックで実現できることを押さえてください。
次の動画もぜひ見て例外処理について深めてください。
以上、単純な例外処理について解説しました。
このサンプルコードをJavaタッチタイプゲームとして遊ぶことができます。
投稿者プロフィール
-
セイ・コンサルティング・グループ株式会社代表取締役。
岐阜県出身。
2000年創業、2004年会社設立。
IT企業向け人材育成研修歴業界歴20年以上。
すべての無駄を省いた費用対効果の高い「筋肉質」な研修を提供します!
この記事に間違い等ありましたらぜひお知らせください。
最新の投稿
- 新人エンジニア研修講師2024年12月25日IT技術者の副業としての研修講師の魅力とは?
- 新人エンジニア研修講師2024年12月25日IT技術者の定年後のお仕事としての研修講師の魅力とは?
- 全ての社員2024年12月25日TOEICでよく出てくる意外な意味で使われる英単語 50連発
- 新人エンジニア研修講師2024年12月25日新人エンジニア研修使える「アイスブレイク集」 45連発