В чём разница: checked vs unchecked исключения?

Ответ

Checked: от Exception (не RuntimeException) — компилятор требует throws/catch. Примеры: IOException, SQLException. Unchecked: от RuntimeException и Error — обрабатывать не обязательно. Примеры: NullPointerException, IllegalArgumentException.

Разбор: Деление идёт по иерархии классов: checked — потомки Exception, кроме RuntimeException (IOException, SQLException), и компилятор требует throws или catch; unchecked — потомки RuntimeException и Error (NPE, IllegalArgumentException), их обрабатывать не обязательно. Ловушки вариантов: перепутаны направления наследования и примеры, придумано несуществующее деление по производительности, а признак checked/unchecked не зависит от фатальности или возможности обработки.

Хочешь так же по своей компании — с вопросами по грейдам и задачами? Закажи гайд или забери свежее в Telegram.

Заказать гайд Пройти тест
новые гайды и свежие вопросы с собесов — первыми в Telegram Смотреть гайды Подписаться