Java里getMethod方法的参数为什么要写成String.class?

Javaxiaoling 2012-02-15 12:57:08
Method m;
try {
m = c1.getMethod("sayHello",String.class,int.class);
String sh=(String) m.invoke(c1.newInstance(),"ling",12);
System.out.println(sh);
} catch (Exception e) {
e.printStackTrace();
}
为什么要写成string.class啊
...全文
570 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
安特矮油 2012-02-15
  • 打赏
  • 举报
回复
这个是根据方法名称,以及方法参数的类型来获取指定的方法。
艳沐石 2012-02-15
  • 打赏
  • 举报
回复
接口就是这么定义的。
爱摸鱼de老邪 2012-02-15
  • 打赏
  • 举报
回复
要求传入的参数类型就是这样的。
脉动 2012-02-15
  • 打赏
  • 举报
回复
Method getMethod(String name, Class<?>... parameterTypes)
--返回一个 Method 对象,它反映此 Class 对象所表示的类或接口的指定公共成员方法。

方法后面接收的就是Class类的对象,而如:String.class、int.class这些字节码才是Class类的对象
xuchongzhigmail 2012-02-15
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 acesidonu 的回复:]

方法签名就是这么规定的
[/Quote]
同意
txzsp 2012-02-15
  • 打赏
  • 举报
回复
类字节码
Acesidonu 2012-02-15
  • 打赏
  • 举报
回复
方法签名就是这么规定的

62,612

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧