A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 喝龙血的我 中级黑马   /  2013-10-11 19:12  /  1321 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 喝龙血的我 于 2013-10-11 20:46 编辑
  1. <p>public class Test {</p><p> public static void main(String []args) throws Exception{</p><p>   
  2.   //反射调用类P的初始化方法P
  3.         Method pp=P.class.getMethod("P", Person.class);
  4.   System.out.println(pp.toString());
  5.   
  6. //  P p=new P("abc",34);
  7. //  System.out.println(p);
  8. //  Method methodname=p.getClass().getMethod("setSs",String.class);
  9. //  methodname.invoke(p, "def");
  10. //  System.out.println(p);  
  11.   
  12. }

  13. }</p><p>class P{
  14. private String ss;
  15. public String getSs() {
  16.   return ss;
  17. }
  18. public void setSs(String ss) {
  19.   this.ss = ss;
  20. }
  21. public int getIi() {
  22.   return ii;
  23. }
  24. public void setIi(int ii) {
  25.   this.ii = ii;
  26. }
  27. private int ii;
  28. public P(String ss, int ii) {
  29.   super();
  30.   this.ss = ss;
  31.   this.ii = ii;
  32. }</p><p> @Override
  33. public String toString() {
  34.   return "P [ss=" + ss + ", ii=" + ii + "]";
  35. }

  36. }</p><p>怎么才能得到类P的初始化方法呢,为什么能得到get,set方法,却得不到初始化方法?</p>
复制代码

2 个回复

倒序浏览
初始化方法有专门的调用方式,例如获取String的有参构造函数String(StringBuffe bufferr):
  1. Constructor constructor = String.class.getConstructor(StringBuffer.class);
复制代码
你的应该是
  1. Constructor constructor = p.class.getConstructor(String.class,int.class);
复制代码
你看视频不仔细,脚踏实地才行啊,兄弟
回复 使用道具 举报
。。。  迷了  感谢指点
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马