исключение потери в блокировке catch

Я запускаю этот код:

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");
        }

    }
}

Результат:
попытка: 1
catch: 2
наконец: 3
Исключение в потоке "main" java.lang.NullPointerException at user.main (User.java:17)

в блокировке catch - ArrayIndexOutOfBoundsException, но мы теряем это исключение, почему?

6
задан andersoj 18 October 2010 в 12:12
поделиться