黑马程序员技术交流社区

标题: 求教一个数组反射的问题 [打印本页]

作者: kira    时间: 2014-2-24 18:18
标题: 求教一个数组反射的问题
张老师高新技术里 讲到反射数组这段 他是用.getClass()方法来比较类的字节码
比如
  1. public class ArrDemo {

  2.         /**
  3.          * @param args
  4.          */
  5.         public static void main(String[] args) {
  6.                 // TODO Auto-generated method stub
  7.         int[] a1 =new int[3];
  8.         int[] a2 =new int[4];
  9.         int[][] a3 = new int[3][4];
  10.         String[] a4 =new String[3];
  11.         System.out.println(a1.getClass()==a2.getClass());
  12.         System.out.println(a1.getClass()==a4.getClass());//这个明明不报错的
  13.         System.out.println(a1.getClass()==a3.getClass()); //这个明明不报错的
  14.         }

  15. }
复制代码
但是 我们调用了getClass()的反射方法后 发现获取类的字节码 只有第一个编译不报错 而后面的都报错了
但是张老师视频里 却明明显示的编译通过
问 这是什么原因 跟jdk版本有关么



作者: 我要的幸福呢    时间: 2014-2-24 18:44
我的也会报错,你看是这样吗

我感觉应该跟MyEclipse的版本有关系,视频中张老师用的是6.x版本的,我用的是8.5,它会自动提示你这两者类型不同,你不用再通过运行进行比较了

AEMPYF054N[VCDUDWFIT4Y0.jpg (97.52 KB, 下载次数: 3)

AEMPYF054N[VCDUDWFIT4Y0.jpg

QQ截图20140224184314.png (39.29 KB, 下载次数: 6)

QQ截图20140224184314.png

作者: kira    时间: 2014-2-24 20:32
我要的幸福呢 发表于 2014-2-24 18:44
我的也会报错,你看是这样吗

我感觉应该跟MyEclipse的版本有关系,视频中张老师用的是6.x版本的,我用的是 ...

原来如此 其实我也不太清楚 按道理说可以比较的




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2