本帖最后由 范龙波 于 2013-8-27 12:22 编辑
Class<Integer> clazz = new Integer(12).getClass();
System.out.println(clazz == Integer.TYPE);
问题1: 打印结果为false ,为什么?
以下为Integer的源码
public static final Class<Integer> TYPE = (Class<Integer>)Class.getPrimitiveClass("int");
对于这句话的个人理解 :getPrimitiveClass("int"); 获取基本数据类型的字节码 --->转换为Integer.class : 如果是这样打印语句应该是true啊;
static native Class getPrimitiveClass(String name);
问题2:源码中用private代替 native 定义这个方法 有什么区别
|