黑马程序员技术交流社区

标题: 关于jdk编译版本 [打印本页]

作者: xkfxm    时间: 2013-8-5 13:53
标题: 关于jdk编译版本
           int[] a1 = new  int[]{1,2,3};
           int[] a2 = new  int[4];
           int[][] a3 = new  int[2][3];
           String [] str = new String[]{"a","b","c"};
           //同类型同维数的数组的Class对象都是一个
           System.out.println(a1.getClass() == a2.getClass());   //true
           System.out.println(a1.getClass() == a3.getClass());  //false
           System.out.println(a1.getClass() == str.getClass());  //false
最后两行代码出错,老师上面没错,错误提示Incompatible operand types Class<capture#9-of ? extends int[]> and Class<capture#10-of ? extends int[][]>
类型不匹配。这个是因为编译时使用JDK版本不同是吗?
我试过将JDK版本改成1.5以下上面代码可以编译通过,但是基础加强工程下面还有些类编译就不会通过了,因为使用了1.5新特性(自动装箱,静态导入,泛型等等)。
老师上面怎么所有的类都能编译通过呢?是不是可以设置单个类的编译JDK版本?我试过不可以,老师用的是哪个版本的JDK?





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