⬅ Previous Topic
Java new KeywordNext Topic ⮕
Java package Keyword⬅ Previous Topic
Java new KeywordNext Topic ⮕
Java package Keywordnull
Keyword in JavaIn Java, null
is a special literal that represents the absence of a value for a reference type. It is not a keyword in the strictest sense (like class
or public
), but a reserved literal used to denote that an object reference does not point to any memory location yet.
null
?Java is a statically typed language, which means every variable must have a type. For object references (non-primitive types), the null
value is a way to indicate "no object". This is crucial in many scenarios such as:
null
to an Objectclass Book {
String title;
}
public class Main {
public static void main(String[] args) {
Book myBook = null; // myBook does not point to any Book object yet
System.out.println(myBook); // prints: null
}
}
null
null
ReferenceIf you try to access members of a reference that is null
, Java will throw a NullPointerException
.
public class Main {
public static void main(String[] args) {
String text = null;
System.out.println(text.length()); // Triggers NullPointerException
}
}
Exception in thread "main" java.lang.NullPointerException
at Main.main(Main.java:4)
NullPointerException
There are several ways to prevent runtime errors due to null
values:
null
before accessing itpublic class Main {
public static void main(String[] args) {
String message = null;
if (message != null) {
System.out.println(message.length());
} else {
System.out.println("The string is null");
}
}
}
The string is null
null
from a Methodpublic class UserService {
public String findUserById(int id) {
if (id == 1) return "Alice";
return null;
}
public static void main(String[] args) {
UserService service = new UserService();
String user = service.findUserById(2);
if (user != null) {
System.out.println("User found: " + user);
} else {
System.out.println("User not found");
}
}
}
User not found
null
to Arrays and Custom Objectspublic class Main {
public static void main(String[] args) {
int[] numbers = null;
String[] names = new String[3];
names[0] = "John";
names[1] = null; // Valid usage
System.out.println(names[1]); // prints: null
}
}
null
null
Always use ==
or !=
when comparing a reference to null
.
String data = null;
if (data == null) {
System.out.println("Data is null");
}
Data is null
null
with Wrapper ClassesWrapper classes like Integer
, Double
, and Boolean
can hold null
, unlike primitive types.
public class Main {
public static void main(String[] args) {
Integer count = null;
if (count == null) {
System.out.println("No value assigned to count");
}
}
}
No value assigned to count
null
is used with reference types to indicate absence of a value.null
reference throws NullPointerException
.Optional
class to write safer code.Whenever you get a NullPointerException
, check the exact line and trace back the reference variable. Most of the time, it’s a missed initialization.
⬅ Previous Topic
Java new KeywordNext Topic ⮕
Java package KeywordYou can support this website with a contribution of your choice.
When making a contribution, mention your name, and programguru.org in the message. Your name shall be displayed in the sponsors list.