Я запускаю этот код:
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, но мы теряем это исключение, почему?