In C language array name generates a pointer to the first element of the array. What about in java?
First of all, Java does not have the concept of pointers, at least not in the sense of C or C++ that allow performing pointer arithmetic.
Java talks about references to Objects, see JLS 16 Chapter 4.3.1: Objects. References are unique and not ambiguous. An array instance is an Object, and a reference to an array instance is distinct from the reference to the first element and all other references.
(the only somewhat misleading mention of “pointer” is in the name of the infamous
NullPointerException, that is triggered whenever a refernce that is
null is dereferenced at runtime.)