2011/05/05

チェック例外( checked exception )と非チェック例外( unchecked exception )

Java の例外
  • コンストラクタやメソッドが実行された時に、戻り値とは別の例外的な値を呼び出し元に戻したい時に、Throwable クラスのサブクラスを生成して呼び出し元に戻すことが出来る
  • コンストラクタやメソッドを実行した結果、本来の正常な処理とは別の例外的な値がコンストラクタやメソッドから返ってきた場合に、メソッドの呼び出し元は catch 節で正常処理とは別のエラー処理のコードを書くことが出来る
チェック例外
  • 投げる側はコンストラクタやメソッドに throws 宣言しなければならない
  • 呼び出し元は try-catch ブロックで囲むか、自分のメソッドシグニチャーで throws 宣言しなければならない
非チェック例外
  • Error クラスまたは RuntimeExceptoin クラス、もしくはそのサブクラス
  • 投げる側はコンストラクタやメソッドに throws 宣言しなくても良い(
  • 呼び出し元も try-catch で囲む必要もないし、自分のメソッドシグニチャーで throws 宣言する必要もない(
see also: Javaプログラマであるかを見分ける10の質問 5.チェック例外と非チェック例外の違いを型と例外処理の観点で説明せよ。

0 件のコメント :

コメントを投稿