| 本帖最后由 student 于 2013-6-3 18:55 编辑 
 
 下面的例子,int.class改为integer.class会抛出异常。问题:是不是反射中不能自动拆箱和装箱呢?注释部分是反射获得构造方法的正确写法
 复制代码package com.demo;
import java.lang.reflect.Constructor;
class Student {
        private String name;
        private int age;
        
        public Student(String name, int age) {
                this.name = name;
                this.age = age;
        }
}
public class Demo {
        public static void main(String[] args) throws Exception {
                //获得字节码
                Class cla = Class.forName("com.demo.Student");
                
                //正确的写法:获得构造方法
//                Constructor<Student> cons = cla.getConstructor(String.class, int.class);
                
                //错误的写法:获得构造方法
                Constructor<Student> cons = cla.getConstructor(String.class, Integer.class);
                //创建实例对象
                Student stu = cons.newInstance("Student", 23);
        }
}
 
 |