求java大牛帮忙解答解决办法 发布时间: 2012-05-29 12:16:00 作者: rapoo
求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来修改其权限