本帖最后由 闾丘日月 于 2012-6-4 11:14 编辑
占楼先,我来看看,好难啊,解决不了。把我的所得汇报一下吧
抛出异常的函数为 Reflection.ensureMemberAccess(caller, clazz, obj, modifiers);
抛异常的语句为 if (!verifyMemberAccess(currentClass, memberClass, target, modifiers)) {
throw new IllegalAccessException("Class " + currentClass.getName() +
" can not access a member of class " +
memberClass.getName() +
" with modifiers \"" +
Modifier.toString(modifiers) +
"\"");
它根据verifyMemberAccess函数的返回值是真还是假来判断能否抛异常,
至于这个函数逻辑太过复杂,我看晕掉了,而且我不知道传的参数是哪些,怎么传进来的。
|