Un Initialized Array

Example:
class Test
{
int[] a;
public static void main(String[] args)
{
Test t1=new Test();
System.out.println(t1.a);         //null
System.out.println(t1.a[0]);   //R.E:NullPointerException
}
}

Instance level:

Example 1:
int[] a;
System.out.println(obj.a);        //null
System.out.println(obj.a[0]);  //R.E:NullPointerException

Example 2:
int[] a=new int[3];
System.out.println(obj.a);        //[I@3e25a5
System.out.println(obj.a[0]);  //0

Static level:

Example 1:
static int[] a;
System.out.println(a);        //null
System.out.println(a[0]);   //R.E:NullPointerException

Example 2:
static int[] a=new int[3];
System.out.println(a);           //[I@3e25a5
System.out.println(a[0]);      //0

Local level:

Example 1:
int[] a;
System.out.println(a);             // C.E: variable a might not have been initialized
System.out.println(a[0]);

Example 2:
int[] a=new int[3];
System.out.println(a);           //[I@3e25a5
System.out.println(a[0]);     //0

Once we created an array every element is always initialized with default values
irrespective of whether it is static or instance or local array.