为什么double.class不等于java.lang.Double.class?

Tro*_*ner 6 java primitive class

由于原始double用java.lang.Double类表示,所以double.class不应该等于java.lang.Double.class吗?(这当然也发生在其他原始类型上)

System.out.println(double.class == Double.class);
Run Code Online (Sandbox Code Playgroud)

输出:

Result: false
Run Code Online (Sandbox Code Playgroud)

Pau*_*ton 13

Double.class是包装类型对应的类对象Double.double实际上不是一个类,而是double.class反射中使用的对象,表示参数或返回类型具有基本类型double.