Ответ
Непроверяемое исключение (unchecked exception) — это исключение, класс которого является подклассом RuntimeException или Error. Компилятор не требует его обязательного объявления (через throws) или обработки (в блоке try-catch).
Характеристики:
- Не проверяются на этапе компиляции.
- Указывают на ошибки, которые часто являются следствием логических ошибок в коде (баги).
- Могут возникнуть в любом месте программы.
Распространенные примеры:
NullPointerException(обращение кnull)ArrayIndexOutOfBoundsException(выход за границы массива)ArithmeticException(деление на ноль)IllegalArgumentException(некорректный аргумент метода)ClassCastException(ошибка приведения типа)
Пример:
public void processArray(int[] array, int index) {
// Компилятор не заставит обработать возможные
// ArrayIndexOutOfBoundsException или NullPointerException
int value = array[index]; // Риск unchecked исключений
System.out.println(value / 2); // Риск ArithmeticException
}
Когда использовать? Непроверяемые исключения следует применять для ошибок, которые программист может предотвратить проверкой кода (например, проверка null или границ массива). Их обработка часто является фатальной для текущей операции.