您的位置:首页 > 编程语言 > Java开发

有关java通过反射机制调用类中自有方法的问题

2008-11-11 16:48 856 查看
相关文章:

new Draggable("related_topics");

在java中,通过其提供的反射机制,修改对象的accessible标志,以达到访问该对象成员时不检测访问权限的目的。
/*利用反射修改访问安全检测*/
public class B {
public static void main(String[] args)
throws SecurityException, NoSuchFieldException, NoSuchMethodException, InstantiationException, IllegalAccessException, IllegalArgumentException, InvocationTargetException{
Class<A> a = A.class;
Field field = a.getDeclaredField("rubbish");
field.setAccessible(true);

Class[] paramsType = new Class[1];
paramsType[0] = String.class;
Method method = a.getDeclaredMethod("backStr", paramsType);
method.setAccessible(true);

A obj = a.newInstance();
System.out.println("私有" + field.get((obj)));

String aa = "aaaaaaaaa";
Object[] params = new Object[1];
params[0] = aa;
System.out.println("函数:" + method.invoke(obj, params));
}
}

class A {
private String rubbish = "1111";

private String backStr(String aa){
return aa;
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: