Without any doubt, array is one of the most used data structure in all programming language, including Java. Pick up any programming language be it functional, object oriented, imperative or even scripting language like Python, Bash and Perl, you will always find array. That's why it's important for any programmer to have good understanding of arry data structure. Array is used to store elements in contiguous memory location and many C, C++ programmer can take advantage of pointer to work with array. In Java, there is no pointers and arrays are also little bit different. They are
object, they have length field which denotes how many elements array can store. Arrays are created in special memory area called heap memory in JVM, which is also created when you start the JVM. What remains same is that you can access the array element in constant time using their index, this works almost similarly in both C, C++ and Java, they start with 0 and ends at
length -1, but Java array has an extra caveat that array index access are subject to bound check in Java. In C, it's possible for a program to access an invalid index, mostly index higher than size of array. In Java such attempts will result in
ArrayIndexOutOfBoundsException, this is done to protect external memory access from JVM due to malicious programs.