Назад к вопросам
Aston
Junior — Middle
70
Какие изменения были внесены в обработку NullPointerException в Java начиная с версии 11 и до 17?
Компании, где спрашивали
Ответ от нейросети
sobes.tech AI
Начиная с Java 14 (а не с 11) была введена улучшенная диагностика NullPointerException — так называемые "Helpful NullPointerExceptions". Эта функция позволяет JVM выдавать более информативные сообщения об ошибках, указывая, какая именно переменная или выражение было null, что облегчает отладку.
В версиях Java 11-13 таких изменений не было, а с 14 по 17 эта возможность стала стандартной и улучшалась.
Пример сообщения с Helpful NullPointerException:
Exception in thread "main" java.lang.NullPointerException: Cannot invoke "String.length()" because "str" is null
Для включения этой функции в ранних версиях нужно было запускать JVM с флагом -XX:+ShowCodeDetailsInExceptionMessages, а начиная с Java 15 она включена по умолчанию.