next up previous
Next: 1.5 throws節 Up: 1 制御文 Previous: 1.3 try-catch-finally文

1.4 例外処理

プログラムの中ではいろいろなエラーが発生する場合がある. それは,すべてのエラーが起こりうる可能性をあらかじめ調べつくして おくということが困難な場合や,事前に調べるようなコードを入れて おくとプログラムが煩雑になったりするために,エラーが起こってから 処置をするという具合にせざるを得ない形になる. そのため,Javaでは,そういったエラーをきれいに扱うための 例外(exception)をクラスとして定義している. Javaでは, 異常なエラー状態を検出したメソッドは,例外をスロー(throw)する. 例外は,呼び出しスタック上のコードによってキャッチする. メソッドを呼び出しているコードは,そのスローされた例外を処理して実行を続 けることができる.例外がキャッチされないと実行中のスレッドは終了する. 例外は,オブジェクトで,型,メソッド,データを伴うことができ,かつ, スローされるオブジェクトとなるように クラスThrowableやそのサブクラスのExceptionクラスを 拡張した形で定義される形となっている. 例外型の作成は,以下のように行う.
public class NoSuchAttributeException
       extends Exception {
  public String attrName;
  public NoSuchAttributeException(String name) {
    super("No attribugte named \"" +
            name + "\" found ");
    attrName = name;
  }
}


generated through LaTeX2HTML. M.Inaba 平成18年5月7日