为什么Nullpointerexception?

P R*_*P R 0 java nullpointerexception

这是场景:

class A{
int a;
}

class B{
A objectA[]=new A[10] ;
}

class C{
B ObjectB;
public static void main(String[] args){
ObjectB.ObjectA[0].a=1;
}
}
Run Code Online (Sandbox Code Playgroud)

我在主操作中得到nullpointerexception.但是,如果我只声明A类的一个对象,我就不会收到错误.为什么这样?我该如何纠正呢?

ami*_*mit 5

(1)B ObjectB;不创建新的实例B,只是创建变量,创建一个实例;B ObjectB = new B();

(2)同样A objectA[]=new A[10] ;分配数组,但不分配数组中的元素,ObjectB.ObjectA[0].a=1;也会导致NPE.