Назад к задачам
Junior — Senior
7

Как работает цепочка try‑catch‑finally при возникновении исключения

Получайте помощь с лайвкодингом в реальном времени с Sobes Copilot
Условие задачи

Определите, какой вывод появится в консоли при выполнении приведённого ниже фрагмента кода. Требуется пояснить, как взаимодействуют блоки catch, блок finally и повторный бросок нового исключения.

public static void main(String[] args) {
    try {
        int i = 1 / 0;
        System.out.println("1");
    } catch (ArithmeticException e) {
        System.out.println("2");
        throw new RuntimeException();
    } catch (Exception e) {
        System.out.println("3");
    } finally {
        System.out.println("4");
    }
    System.out.println("5");
}