类名.class;
对象名.getClass();
Class.forName("类"); " com.wsq.UserBean"
public class A {
private String rubbish="1111";
public String rubbish1="2222";
}
import java.lang.reflect.Field;
public class B {
public static void main(String[] args) throws InstantiationException, IllegalAccessException, SecurityException, NoSuchFieldException {
Class clazz=A.class;
Field field=clazz.getDeclaredField("rubbish"); // 要是私有要用这个方法
Field field1=clazz.getDeclaredField("rubbish1");
Field field2=clazz.getField("rubbish1"); //只能访问public
field.setAccessible(true);//改变可访问权限
A obj=(A)clazz.newInstance();
System.out.println("私有"+field.get((obj)));
System.out.println("公有"+field1.get((obj)));
System.out.println(“公有"+field2.get((obj)));
}
本文详细探讨了Java中获取Class对象的三种方式,并通过实例展示了如何使用反射API访问类的私有成员。
918

被折叠的 条评论
为什么被折叠?



