黑马程序员技术交流社区
标题:
Array的反射体现
[打印本页]
作者:
赵学刚
时间:
2012-12-15 23:14
标题:
Array的反射体现
本帖最后由 赵学刚 于 2012-12-16 11:14 编辑
Array工具类用于对数组的反射操作, 问下反射具体体现在哪呢,哪位能结合代码清楚的讲讲,谢谢...........
作者:
super_Xiong
时间:
2012-12-16 01:05
这一段我也看的好晕呢~~
作者:
孙辉辉
时间:
2012-12-16 10:41
数组是Java编程语言中的对象。与所有对象一样,它们全部有类。假若您有一个数组,使用标准 getClass 办法,您能获得该数组的类,便象任何其它对象一样。可是, 不通过现有的实例来获得类不同于其它类型的对象。即使您有一个数组类,您也不能端直对它进行太多的操作 -- 反射为标准类提供的构造函数接入不能用于数组,并且数组没任何可接入的字段,只有基本的 java.lang.Object 办法定义用于数组对象。数组的特殊处理使用 java.lang.reflect.Array 类提供的静态办法的集合。该类中的办法使您能够创建新数组,获得数组对象的长度,读和写数组对象的索引值。
下面显示Array工具类用于完成对数组的反射操作
通过反射来扩展一个数组:
private static void printObject(Object obj) {
Class clazz = obj.getClass();
if(clazz.isArray()){ //如果是数组
int len = Array.getLength(obj); //取得数组的长度
for(int i=0;i<len;i++){
System.out.println(Array.get(obj, i)); //循环遍历输出
}
}else{
System.out.println(obj);
}
}
复制代码
作者:
赵学刚
时间:
2012-12-16 11:14
嗯 谢谢
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2