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

 
相关文章: 
<script type=text/javascript> new Draggable("related_topics"); </script> 在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;
}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值