This is the class:
class Foo {
public void bar(int a, Object b) {
}
}
Now I'm trying to get "reflect" this method from the class:
Class c = Foo.class;
Class[] types 开发者_开发百科= { ... }; // what should be here?
Method m = c.getMethod("bar", types);
There's just an int.class
.
Class[] types = { int.class, Object.class };
An alternative is Integer.TYPE
.
Class[] types = { Integer.TYPE, Object.class };
The same applies on other primitives.
The parameter of the method is a primitive short
not an Object Short
.
Reflection will not find the method because you specified an object short. The parameters in getMethod()
have to match exactly.
EDIT: The question was changed. Initially, the question was to find a method that takes a single primitive short.
精彩评论