本帖最后由 --_.Is’攸稀 于 2014-2-17 18:36 编辑
关于反射构造函数的~为什么我弄的程序找不到构造函数
首先有个Person类,代码如下:
- public class Person
- {
- String name;
- int year = 0;
- Person(){}
- Person(String name,int year)
- {
- this.name = name;
- this.year=year;
- }
- }
复制代码 然后我的主代码如下:
- package reflectTest;
- import java.lang.reflect.Constructor;
- public class reflectTest {
- public static void main(String[] args){
- Person person1 = new Person();
- Class c1 = person1.getClass();//创建一个字节码对象
- try {
- c1.getConstructor(String.class,int.class);//获取有参的那个构造函数
- } catch (NoSuchMethodException e) {
- System.out.println("这错");
- } catch (SecurityException e) {
-
- e.printStackTrace();
- }
- //获取所有的构造函数
- Constructor[] cons=c1.getConstructors();
- System.out.println(cons.length);
- }
- }
复制代码 显示的是
---------
这错
0
---------
为什么?哪里错了!~
|