В чём разница между checked и unchecked exceptions?

Junior
457 просмотров
AFK Offer AI

Checked exceptions (IOException, SQLException) — компилятор заставляет их обработать через catch или throws. Unchecked — наследники RuntimeException (NullPointerException, IllegalArgumentException) — компилятор не требует обработки. Checked нужны для предсказуемых проблем (файл не найден, сеть упала). Unchecked — для багов в коде (null, выход за границы массива). В современной Java и Spring тренд — меньше checked, больше unchecked, потому что checked загрязняют API.

Следующий вопрос

В чём разница между abstract class и interface?