If I invoke clone() method on array of Objects of type A, how will it clone its elements?
The elements of the array will not be cloned.
Will the copy be referencing to the same objects?
Yes.
Or will it call (element of type A).clone() for each of them?
No, it will not call clone()
on any of the elements.