finallyを使ってみる
例外を検出するぞー、と意気込んでtry&catch構文を使っていても
例外が検出されなかったときや、どの例外のときでも一律して行いたい
処理がある場合につかうのが
例外が検出されなかったときや、どの例外のときでも一律して行いたい
処理がある場合につかうのが
finally{}
です、これを使うと必ず最後に{}の処理を行ってくれます
例外を検出できないサンプル
class SuperClass {
public int x[] = new int[5];
//コンストラクタ
public SuperClass(int m){
x[m] = m;
}
//メソッド
public void Out(int n){
System.out.println("配列の中身は" + x[n]);
}
}
class Sample {
public static void main(String args[])
{
//サブクラス作成
SuperClass test = new SuperClass(4);
//例外を検出
try {
//サブクラスのメソッド
test.Out(4);
}
catch(ArrayIndexOutOfBoundsException e){
System.out.println("発生した例外は" + e);
}
finally{
System.out.println("平穏無事");
}
}
}