Java:获取用于反射的基元数组类的正确方法
我试图使用反射来调用一个接受字节数组的方法 我开始做:Java:获取用于反射的基元数组类的正确方法,java,arrays,reflection,primitive,Java,Arrays,Reflection,Primitive,我试图使用反射来调用一个接受字节数组的方法 我开始做: Class myClass = anObject.getClass(); Class[] parameterTypes = {byte[].getClass();}; 但这在byte[]行上不起作用(类应为,}应为)。有人知道我该怎么做吗?强制转换到对象并声明该方法接受对象?尝试以下操作: Class[] parameterTypes = new Class[] {byte[].class}; 太好了,谢谢,成功了。我真的不明白为什么
Class myClass = anObject.getClass();
Class[] parameterTypes =
{byte[].getClass();};
但这在byte[]行上不起作用(类应为,}应为)。有人知道我该怎么做吗?强制转换到对象并声明该方法接受对象?尝试以下操作:
Class[] parameterTypes = new Class[] {byte[].class};
太好了,谢谢,成功了。我真的不明白为什么整数[]x={5};整数[]y={新整数(5)};好吧,
Class[]parameterTypes={byte[].Class}
也可以工作,就像您的示例一样。原始代码的问题是试图在字节[]声明上调用getClass()实例方法。(这可能是Class[]
Integer[]x={5}
工作,因为5
是自动装箱的——相当于Integer.valueOf(5)
。