Взгляните на следующие два метода:
public static void foo() {
try {
foo();
} finally {
foo();
}
}
public static void bar() {
bar();
}
Запуск bar()
явно приводит к StackOverflowError
, но запуск foo()
не выполняется (программа просто работает бесконечно). Почему это?