开发者

How to use getMethod() with primitive types?

开发者 https://www.devze.com 2023-02-11 12:20 出处:网络
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:

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.

0

精彩评论

暂无评论...
验证码 换一张
取 消