当前位置: 代码迷 >> J2EE >> 求java大牛帮忙解答解决办法
  详细解决方案

求java大牛帮忙解答解决办法

热度:109   发布时间:2016-04-22 01:22:55.0
求java大牛帮忙解答
java中,如何动态改变类的访问权限?

------解决方案--------------------
Java code
可以在你的代码里加个标志位 动态改变这个 标志, 你调用的方法前先判断这个标志就可以了
------解决方案--------------------
这是可以的,条件是通过反射来做。

比如有个org.test.A类,里面有个doit方法

private doit()
{
}

你通过以下代码取得这个方法,
A a = new A();
Method doitMethod = a.getClass().getDeclaredMethod("doit");
doitMethod.setAccessible(true);
doitMethod.invoke(a,参数);
就可以了

关键是可以通过setAccessible来修改其权限
------解决方案--------------------
用反射就可以做到了,可以设置属性和方法的各种访问级别;
这是可以的,条件是通过反射来做。 
类似于9L的代码,JDK中有说明


探讨
这是可以的,条件是通过反射来做。

比如有个org.test.A类,里面有个doit方法

private doit()
{
}

你通过以下代码取得这个方法,
A a = new A();
Method doitMethod = a.getClass().getDeclaredMethod("doit");
doitMethod.setAccessible(true);
doitMethod.invoke(a,参数);
就可以了

关键是可以通过setAccessible来修改其权限

------解决方案--------------------
探讨
这是可以的,条件是通过反射来做。

比如有个org.test.A类,里面有个doit方法

private doit()
{
}

你通过以下代码取得这个方法,
A a = new A();
Method doitMethod = a.getClass().getDeclaredMethod("doit");
doitMethod.setAccessible(true);
doitMethod.invoke(a,参数);
就可以了

关键是可以通过setAccessible来修改其权限
  相关解决方案