不管是基本類型的數組還是對象類型的數組,在Java中,數組都是對象,數組的父類是Object類,數組對象可以賦值給Object對象來保存~。
那麼聲明數組對象的類型應該怎麼說?
public class Test {
public static void main(String[] args) {
int[] a = new int[3];
int[][] b = new int[2][2];
String[] strings = {"a","b"};
if(a instanceof int[]){
System.out.println("a`s type is int[]");
}
if(b instanceof int[][]){
System.out.println("b`s type is int[][]");
}
if(strings instanceof String[]){
System.out.println("strings`s type is String[]");
}
}
}
運行結果:
a`s type is int[]
b`s type is int[][]
strings`s type is String[]
如果做到上面這樣,你心中還是有一些疑問,那麼看下面代碼
public static void main(String[] args)
{
int[] a = new int[3];
Class clz = int[].class;
Class superClz = clz.getSuperclass();
System.out.println(superClz.getName());
}
輸出結果爲:
java.lang.Object
由此,可以看出,我們的數組類的父類就是我們的Object類。
總結:
數組是對象,數組的父類是Object,每個數組都實現了接口Cloneable and java.io.Serializable。因此,在以後的很多應用場景,可以將我們的數組對象賦值給Object對象保存。