黑马程序员技术交流社区

标题: getConstructor [打印本页]

作者: zl78365336    时间: 2013-11-7 08:50
标题: getConstructor
麻烦哪位师兄告诉我getConstructor参数列表该放什么参数,小疑惑,谢谢!

作者: 敗唫①輩ふ    时间: 2013-11-7 09:07
getConstructor()方法中应该放的是若干个class对象吧,只是个人理解的。{:soso_e149:}
作者: zl78365336    时间: 2013-11-7 09:28
Class.forName("文件名").getConstructor(class对象);
前面已经得到了对象,再得到不就重复了吗
作者: kuoge110    时间: 2013-11-7 10:30
额这个怎么说呢 给你举个小例子吧
  1.     try{  
  2.                 Class tmpClass = Class.forName("Constructor1");  //class name, 如果有package,也需要添加上. i.e. com.abc.Constructor1;  
  3.                 Class[] paramtersList = {String.class,Integer.TYPE};   // 构造method的参数(class)类型列表  
  4.                 java.lang.reflect.Constructor constructor = tmpClass.getConstructor(paramtersList); //get constructor  
  5.                 Object[] arg= new Object[] { "Test", Integer.valueOf(1)};  //set paramter  这里对应constructor  
  6.                 Object object = constructor.newInstance(arg);   //获得实例(<i>相当于</i> new  Constructor1(“test”,1) )
  7.                 if(object != null) {  
  8.                  System.out.println("success!");  
  9.                 }  
  10.                  
  11.         }  
  12.         catch(Exception e) {  
  13.          e.printStackTrace();  
  14.         }  
复制代码

作者: zl78365336    时间: 2013-11-7 14:13
获取有参
tmpClass.getConstructor(paramtersList);
获取无参
tmpClass.getConstructor();
是这样理解对吧?
作者: zl78365336    时间: 2013-11-7 19:58
解释的很好,谢谢
要是有几个实例就更好了




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2