1、如何得到各个字节码对应的实例对象(Class类型)
1)类名.class 例如:System.class
2)对象.getClass() 例如:new Date().getClass()
3)Class.forName("类名") 例如:Class.forName("java.util.Date")
2、8种基本类型:boolean
, byte
, char
, short
, int
, long
, float
,和 double
1)
public class ReflectTest {
public static void main(String[] args) throws Exception {
String str1 = "abc";
Class cls1 = str1.getClass();
Class cls2 = String.class;
Class cls3 = Class.forName("java.lang.String");
System.out.println(cls1 == cls2);
System.out.println(cls1 == cls3);
}
}
运行结果:
true
true
2)
package ReflectTest;
public class ReflectTest {
public static void main(String[] args) throws Exception {
String str1 = "abc";
Class cls1 = str1.getClass();
System.out.println(cls1.isPrimitive());//false
System.out.println(int.class.isPrimitive());//true
System.out.println(int.class == Integer.class);//false
System.out.println(int.class == Integer.TYPE);//true
System.out.println(int[].class.isPrimitive());//false
System.out.println(int[].class.isArray());//true
}
}