Java使用反射获取另一个类中方法的数据时报错java.lang.reflect.InvocationTargetException,网上查了很多方法也没有解决,是哪一块的问题啊,具体代码和报错如下图:

Java使用反射获取另一个类中方法的数据时报错java.lang.reflect.InvocationTargetException,网上查了很多方法也没有解决,是哪一块的问题啊,具体代码和报错如下图:

以下回复参考:皆我百晓生、券券喵儿等免费微信小程序作答:
从你的描述和给出的代码片段来看,出现java.lang.InvocationTargetException和java.lang.NullPointerException这两个异常的原因可能有以下几种情况:
private或protected,你需要使用setAccessible(true)来忽略权限限制。否则,即使你通过反射获取到了方法,也无法调用它。method.invoke()时,确保传入的参数与方法的参数列表匹配。类型不匹配或参数缺失都可能导致InvocationTargetException。你需要检查你的代码中传递给方法的参数是否正确。clz.newInstance()可能是返回了一个null对象,然后你在这个null对象上调用方法,导致了空指针异常。你需要确保clz.newInstance()创建了一个有效的对象实例。findMenu内部没有抛出任何未捕获的异常或错误。如果该方法内部有错误,那么当通过反射调用它时,会抛出InvocationTargetException。你需要检查findMenu方法的实现以确保它运行正常。针对以上情况,你可以按照以下步骤进行排查和修复:
method.invoke()的参数与方法的参数列表匹配。clz.newInstance()创建了一个有效的对象实例。你可能需要检查构造函数是否有必要的参数或者是否有默认的构造函数。findMenu的实现以确保其运行正常。最后,如果你需要进一步的帮助或有其他相关代码或问题,请提供更多详细的信息或完整的代码片段,这样我可以更准确地帮助你解决问题。