
本教程操作环境:windows7系统、java10版,DELL G3电脑。
1、使用对象调用Object的getClass方法
获取字节码对象的方法:要使用这种方法,必须明确具体类别,并创建对象。
1 2 3 4 5 6 7 8 9 10 | public static void getClassObject_1() {
Person p = new Person();
Class<?> clazz = p.getClass();
Person p1 = new Person();
Class<?> clazz1 = p1.getClass();
System.out.println(clazz == clazz1);
}
|
2、调用属性
任何数据类型都有静态属性。class可以获得相应的class对象。比较简单,但是要明确使用类别中的静态成员。
1 2 3 4 5 6 7 | public static void getClassObject_2() {
Class<?> clazz = Person.class;
Class<?> clazz1 = Person.class;
System.out.println(clazz == clazz1);
}
|
3、采用forName()方法
可以通过给定类别的字符串名来获得,并且可以更加扩展。但是在Class类中完成。这种方法是forName.这种方法只要有名字就可以,更加方便,更加可扩展。
1 2 3 4 5 6 7 8 | public static void getClassObject_3() throws ClassNotFoundException {
String className = "com.ldb.po.Person" ;
Class<?> clazz = Class.forName(className);
System.out.println(clazz);
}
|
以上就是java反射获取对象的方法,我们在对类进行加载后,类中的class对象需要在调用时被获取,大家学会这种方法后,试着用反射获取对象吧。更多Java学习指路:Java基础