Java не открывает указатели программистам, как это делают C или C++. Вместо этого Java использует ссылки на объекты как слой абстракции. Когда ты используешь оператор точка (.), ты получаешь доступ к членам через ссылку на объект, которой JVM внутри управляет как указателем.
NullPointerException возникает, когда ты пытаешься получить доступ к методу или полю класса через ссылку на объект, которая указывает на null вместо реального экземпляра объекта.
MyObject obj = null;
obj.doSomething(); // NullPointerException выбросится здесь
В этом примере:
obj — это ссылка, которая ни на что не указывает (null)doSomething(), JVM не может разыменовать нулевой указательРазличие в терминологии важно: Java скрывает реализацию указателей от разработчиков, но всё равно использует их внутри. Программисты думают в терминах ссылок на объекты, а JVM управляет реальными операциями с указателями. Такой дизайн повышает безопасность и предотвращает многие ошибки, связанные с указателями, но NullPointerException всё равно возникает, когда ссылки указывают на null.
Ссылки на объекты в Java — это абстракция, которой JVM внутренне управляет как указателями, хотя разработчики не манипулируют указателями напрямую в своём коде.
Новый — ещё не проверен сообществом
Вы