Java getMethod類型參數


 

public class DynamicInvoker {

public static void main(String[] args) {
// TODO Auto-generated method stub

DynamicInvoker app=new DynamicInvoker();
app.sayHello("張三", 2);
try {
try {
app.getClass().getMethod("sayHello", new Class[] {Class.forName("java.lang.String") ,Integer.TYPE})
.invoke(app, "bb",2);
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

app.getClass().getMethod("sayHello", String.class ,int.class )
.invoke(app, new Object[] {"李四",3});



} catch (IllegalAccessException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalArgumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (InvocationTargetException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (NoSuchMethodException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SecurityException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}

public void sayHello(String name,int numberOfTimes)
{
for (int i = 0; i < numberOfTimes; i++) {
System.out.println("hello:"+name);
}
}

}

 

 通過提示我們可以看到,Integer.TYPE實際上就是代表int的類型

 

 

 

所以結果是一樣的。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM