私はこのコードを実行します:
public class User {
public static void main(String args[]) {
int array[] = new int[10];
int i = 1;
try {
System.out.println("try: " + i++);
System.out.println(array[10]);
System.out.println("try");
} catch (Exception e) {
System.out.println("catch: " + i++);
System.out.println(array[10]);
System.out.println("catch");
} finally {
System.out.println("finally: " + i++);
Object o = null;
o.hashCode();
System.out.println("finally");
}
}
}
結果:
try:1
catch:2
finally:3
スレッド"main"の例外java.lang.NullPointerExceptionat user.main(User.java:17)
ブロックキャッチ内-ArrayIndexOutOfBoundsExceptionですが、この例外が失われるのはなぜですか?