Встречается на собеседованиях • сегодня

В чем разница между проверяемым и непроверяемым исключением

Проверяемые исключения (Checked) наследуются от Exception и должны быть обработаны (try-catch) или объявлены в сигнатуре метода (throws). Компилятор проверяет их явно. Пример: IOException, SQLException.

Непроверяемые (Unchecked) наследуются от RuntimeException и не требуют явной обработки. Обычно это ошибки программиста (NPE, ArrayIndexOutOfBounds).

java
// Checked - нужно обработать
try {
    Files.readAllBytes(Paths.get("file.txt"));
} catch (IOException e) {
    e.printStackTrace();
}

// Unchecked - компилятор не требует обработки
int[] arr = {1, 2};
System.out.println(arr[10]); // ArrayIndexOutOfBoundsException
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы