import java.lang.reflect.Array;
public class Demo4 {
//數組的反射
public static void main(String[] args) {
//1、具有相同維數和元素類型的數組屬於同一個類型
//2、代表數組的Class實例對象的getSuperClass()方法返回
//的父類爲Object類對應的Class
//3、基本類型的一維數組可以被當作Object類型使用,不能當作
//Object[] 類型使用;非基本類型的一維數組,即可以當做 Object
//類型使用,又可以當做Object[]類型使用。
//4、Arrays.asList()方法處理int[]和String[]時的差異
//5、Array工具類用於完成對數組的反射操作
printArray("abc".toCharArray());
}
public static void printArray(Object obj){
Class cls = obj.getClass(); //獲取該類對象
if(cls.isArray()){ //判斷該類對象是否是數組
int len = Array.getLength(obj); //獲取長度
for (int i = 0; i < len; i++) { //遍歷
//通過Array.get方法取出數組中的值
System.out.println(Array.get(obj, i));
}
}
else{
System.out.println("該對象不是一個數組");
}
}
}
Java基礎筆記-第十六記
java反射四
數組反射的應用
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.