Java如何通过以原始类型作为参数的反射来调用方法

我在类中有以下两种方法:

public void Test(int i){

System.out.println("1");

}

public void Test(Integer i){

System.out.println("2");

}

下面的代码行

this.getClass().getMethod("Test",Integer.class).invoke(this, 10);

印刷品2,如何使其印刷1

回答:

要使用反射调用以原始类型作为参数的方法:

你可以用 int.class

this.getClass().getMethod("Test",int.class).invoke(this, 10);

要么 Integer.TYPE

this.getClass().getMethod("Test",Integer.TYPE).invoke(this, 10);

同样适用于其他原始类型

以上是 Java如何通过以原始类型作为参数的反射来调用方法 的全部内容, 来源链接: utcz.com/qa/413552.html

回到顶部