1. Arrays allow storing multiple values of the same type and accessing them via an index. They are declared with a type followed by square brackets, and created using the new keyword followed by the type and size.
2. Arrays have a length property that indicates their size. A for loop can iterate from 0 to the length to access each element. Multidimensional arrays extend this concept to multiple indices.
3. The main method of a Java program can optionally take a String array as a parameter, with command line arguments passed in at runtime. This array can then be used within the program.