java的预定义Class对象的方法

基本的 Java 类型(boolean、byte、char、short、int、long、float 和 double)和关键字 void通过class属性也表示为 Class 对象;

Class类中boolean isPrimitive() :判定指定的 Class 对象是否表示一个基本类型。

包装类和Void类的静态TYPE字段;

Integer.TYPE == int.class ;Integer.class == int.class;

数组类型的Class实例对象:

Class clz = String[].class;

数组的Class对象如何比较是否相等? 数组的维数和数组的类型;

Class类中 boolean isArray() :判定此 Class 对象是否表示一个数组类型。

package junereflect624;public class PreClassDemo2 {public static void main(String[] args) {Class> in = int.class;System.out.println(in);//intClass> in2 = Integer.class;//包装类都有一个常量TYPE,用来表示其基本数据类型的字节码Class> in3 = Integer.TYPE;System.out.println(in2);//class java.lang.IntegerSystem.out.println(in3);//intSystem.out.println(in3 == in);//true 包装类都有一个常量TYPE,用来表示其基本数据类型的字节码,所以这里会相等!System.out.println(in3 == in2);//falseClass s = String [].class;Class i = int [].class;//System.out.println(i ==s);//编译根本就通过不了,一个是int,一个是String}//这两个自定义的方法是可以的,一个int,一个Integer//包装类与基本数据类型的字节码是不一样的public void show(int i){}public void show(Integer i){}}