本帖最后由 Super_Class 于 2013-6-17 21:19 编辑
毕老师课程上讲 一个数组,可以通过反射得到每个数组元素的类型,但是无法得到数组的类型。之前用Object数组,添加第一个元素是字符串类型的,用反射得到父类的类型是Object,是正确的,所以自己就想解决一下,就写了下面的,测试结果也在下面。谁能解释一下不能?尤其是[Ljava.lang.String;和[Ljava.lang.Object;算不算违背了这个?- class Demo
- {
- public static void main(String[] args)
- {
- Object[] objects=new Object[]{"abc",231,3.0};
- for (int i = 0; i < objects.length; i++) {
- System.out.println(objects[i].getClass().getName());
- System.out.println(objects[i].getClass().getSuperclass().getName());
- }
- System.out.println(objects.getClass().getName());
-
- System.out.println("---------------------------分割线---------------------------------");
-
- String[] strings=new String[]{"abc","bcd","def"};
- for (String string : strings) {
- System.out.println(string.getClass().getName());
- System.out.println(string.getClass().getSuperclass().getName());
- }
- System.out.println(strings.getClass().getName());
- }
- }
复制代码 |