Java反射; 如何使用Method.invoke()来检索Object数组?

use*_*636 3 java reflection

我需要在Java中使用反射帮助.我需要使用反射来调用返回Object数组的方法.Method.invoke()只返回一个Object.这是怎么做到的?

非常感谢任何见解!

ysh*_*vit 6

您只需将Method.invoke()的返回值强制转换为您可能知道的任何内容.不是很强大,但这是反思的风险!所以在这种情况下,它将是:

Object[] result = (Object[]) method.invoke(...);
Run Code Online (Sandbox Code Playgroud)

顺便说一句,注意,如果该方法返回一个原始的(int,double,等),Method.invoke将返回其盒装当量(Integer,Double,等).