例外の正体|Javaから楽しく学ぶ!ゲームプログラミング専門学校

Javaから楽しく学ぶ!ゲームプログラミング専門学校

ゲームプログラミングとはその名のとおりゲームのプログラムを作ることを指します。『Javaから楽しく学ぶ!ゲームプログラミング専門学校』ではゲームプログラミングについて、実際にゲームプログラムをJAVAプログラミング言語を使用し、作成していきながら詳しく解説していきます。

例外の正体

例外にはさまざまな種類があるということを前回の記事で触れました。
例外の特定

実は例外もオブジェクトであり下図のような階層構造となっているクラスによって管理されています。
java.lang.Object
|
+--java.lang.Throwable
|
+--java.lang.Error
| |
| +--
|
+--java.lang.Exception
|
+--IOException
|
+--RuntimeException
| |
| +--ArrayIndexOutOfBoundsException
|
+--

太字になっているThrowableクラスの下位クラスが例外クラスです。

例えば、次のサンプルを見てください。
        try{
int a[];
a = new int[10];

a[10] = 500;
System.out.println("a[10]には" + a[10] + "が格納されています。");
}catch(ArrayIndexOutOfBoundsException e){
System.out.println(e + "という例外が発生しました。");
}
このコードを含んだ状態でプログラムを実行すると、途中で例外が発生します。
例外発生後、ArrayIndexOutOfBoundsExceptionというクラスのオブジェクトが生成され、catchブロックに処理が移ります。
catchブロックでは、()内で、ArrayIndexOutOfBoundsExceptionオブジェクトを受け取り、記述した例外処理を実行します。


クラスとオブジェクトの違い
クラスはオブジェクトの型を表します。
つまり上記サンプルだと、ArrayIndexOutOfBoundsExceptionがクラス、eがオブジェクトと表します。

Errorクラス
Errorクラスの下位層にあたる例外クラスは、プログラムの重大なエラーを表しており、それらの例外処理をプログラマが記述する必要はありません。
それらのクラスが表す例外は回復不可能な場合が多く、大抵、catchブロックで例外を拾えずプログラムが異常終了してしまうからです。
プログラマが意識しなければならないのは、回復可能な例外の集まりであるExceptionクラスの下位層になります。
トラックバック:0Edit
Copyright © Javaから楽しく学ぶ!ゲームプログラミング専門学校 All Rights Reserved.
当サイトのテキストや画像等すべての転載転用・商用販売を固く禁じます