Ответ
NullPointerException (NPE) — это непроверяемое (unchecked) исключение. Оно наследуется от RuntimeException.
Почему это важно:
- Компилятор не требует явно обрабатывать NPE (блоком
try-catch) или объявлять его в сигнатуре метода с помощьюthrows. - Это исключение возникает во время выполнения (runtime) при попытке использовать
nullтам, где требуется объект.
Пример, вызывающий NPE:
String text = null;
// Следующая строка выбросит NullPointerException при выполнении
int length = text.length();
Контраст с проверяемыми исключениями: Проверяемые исключения, такие как IOException, должны быть либо обработаны, либо объявлены в throws. Иначе код не скомпилируется.