Discussion :: Objects and Collections
-
What will be the output of the program?
public class Test { private static int[] x; public static void main(String[] args) { System.out.println(x[0]); } }
Answer : Option D
Explanation :
In the above code the array reference variable x has been declared but it has not been instantiated i.e. the new statement is missing, for example:
private static int[]x = new int[5];
private static int[x] declares a static i.e. class level array.
the "new" keyword is the word that actually creates said array.
int[5] in association with the new sets the size of the array. so since the above code contains no new or size decalarations when you try and access x[0] you are trying to access a member of an array that has been declared but not intialized hence you get a NullPointerException at runtime.
Be The First To Comment