
原因:因为方法的权限不是public。而我使用getMethod(只能获取public权限方法)
this.getClass().getMethod(methodName,HttpServletRequest.class,HttpServletResponse.class);//有参数,所以需要填参数类型.class
解决:
//忽略访问权限修饰符,获取方法 this.getClass().getDeclaredMethod(methodName,HttpServletRequest.class,HttpServletResponse.class);//有参数,所以需要填参数类型.class //暴力反射 method.setAccessible(true);
本文介绍如何在Java中使用反射机制获取并调用非public权限的方法。通过使用getDeclaredMethod而不是getMethod来忽略方法的访问权限修饰符,并通过setAccessible(true)使私有方法可以被访问。
1007

被折叠的 条评论
为什么被折叠?



