Yet some short questions: isn't this "array type", which has as direct superclass an Object, defined as a class in Java's class hierarchy? Shouldn't I be able to find it somewhere into the API DOC ?
Maybe an example would help.
String is a class type. String[] is an array type. Runnable is an interface type. Runnable[] is an array type. int is a primitive type. int[] is an array type.
The API Doc defines the class type String and the interface type Runnable. It does not define the primitive type int or the array types String[], Runnable[] and int[].
from which super class the "length" field is coming from in the case of, let's say, an int array
See page 6, Array Representation
http://www.artima.com/insidejvm/ed2/jvm.html