Sobes.tech
Junior — Middle
104

¿Qué cambios se han realizado en el manejo de NullPointerException en Java desde la versión 11 hasta la 17?

Empresas donde se preguntó
AstonAston

Respuesta de la IA

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 она включена по умолчанию.