對于數(shù)組實例來說,其類型是由JVM運行期動態(tài)生成的,表示為[[Lcom.shengsiyuan.jvm.classloader.MyParent4;這種形式
動態(tài)生成的類型,其父類型是Object。
對于數(shù)組來說,JavaDoc經(jīng)常將構成數(shù)組的元素為Component,實際上就是將數(shù)組降低一個維度后的類型。但是數(shù)組類與類加載器仍然又很密切的關系,因為數(shù)組類的元素類型(ElementType,指的是數(shù)組去掉所有維度的類型)最終是要靠類加載器去創(chuàng)建。
public class MyTest4 {
public static void main(String[] args) {
MyParent4[] myParent4s = new MyParent4[1];
System.out.println(myParent4s.getClass());//class [Lcom.shengsiyuan.jvm.classloader.MyParent4;
System.out.println(myParent4s.getClass().getClassLoader());//sun.misc.Launcher$AppClassLoader@18b4aac2
System.out.println("========");
MyParent4[][] myParent4s1 = new MyParent4[1][1];
System.out.println(myParent4s1.getClass());//class [[Lcom.shengsiyuan.jvm.classloader.MyParent4;
System.out.println(myParent4s.getClass().getSuperclass());//class java.lang.Object
System.out.println("========");
int[] ints = new int[1];
System.out.println(ints.getClass());//class [I
System.out.println(ints.getClass().getSuperclass());//class java.lang.Object
}
}
class MyParent4{
static {
System.out.println("Myparent4 static code");
}
}