基本的 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);//int
Class> in2 = Integer.class;
//包装类都有一个常量TYPE,用来表示其基本数据类型的字节码
Class> in3 = Integer.TYPE;
System.out.println(in2);//class java.lang.Integer
System.out.println(in3);//int
System.out.println(in3 == in);//true 包装类都有一个常量TYPE,用来表示其基本数据类型的字节码,所以这里会相等!
System.out.println(in3 == in2);//false
Class 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){}
}
到此这篇关于关于java的九个预定义Class对象的文章就介绍到这了,更多相关java预定义Class对象内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!