Login | Register   
LinkedIn
Google+
Twitter
RSS Feed
Download our iPhone app
TODAY'S HEADLINES  |   ARTICLE ARCHIVE  |   FORUMS  |   TIP BANK
Browse DevX
Sign up for e-mail newsletters from DevX


Tip of the Day
Language: Java Language
Expertise: Beginner
Sep 14, 1999

NullPointerException

Question:
Since there are no pointers in Java why is there a NullPointerException?

Answer:
It is a bit misleading to say that Java does not have pointers. Reference variables are very similar to automatically dereferenced pointers, but act in a safer manner. It is more accurate to say that Java does not support pointer arithmetic or access to raw memory. Reference variables still need to point to real objects, even though they do not point to raw memory. An uninitialized reference variable holds the null reference value, which is a special value meaning that the variable does not reference anything. A reference variable can also be made to no longer reference an object by assigning it the null value.

Any time you try to invoke a method, or access a member variable of a null reference, the JVM will throw a NullPointerException. This exception could just as easily been called NullReferenceException. Java's designers probably opted for the first name because references are very closely related to pointers, and C/C++ programmers are used to the idea of attempting to reference a null pointers.

DevX Pro
 
Comment and Contribute

 

 

 

 

 


(Maximum characters: 1200). You have 1200 characters left.

 

 

Sitemap
Thanks for your registration, follow us on our social networks to keep up-to-date