This is correct.
A[] a = new A[4];
creates...creates 4 AA references, similar to doing this:
A a1;
A a2;
A a3;
A a4;
nowNow you couldn't do a1.someMethod()a1.someMethod() without allocating a1 asa1 like this:
a1 = new A();
similarlySimilarly, with the array you need to do this:
a[0] = new A();
before...before using it.