黑马程序员技术交流社区

标题: 反射构造函数为什么出现java.lang.NoSuchMethodException [打印本页]

作者: 随然    时间: 2015-4-25 21:30
标题: 反射构造函数为什么出现java.lang.NoSuchMethodException
class Person
{
        private String name;
        private int age;
        Person(String name, int age)
        {
                this.name = name;
                this.age = age;
        }
        public String getName() {
                return name;
        }
        public void setName(String name) {
                this.name = name;
        }
        public int getAge() {
                return age;
        }
        public void setAge(int age) {
                this.age = age;
        }
        public String toString()
        {
                return name+age;
        }
}

public class Test6 {

        public static void main(String[] args) throws Exception
        {       
                Constructor<Person> constructor = Person.class.getConstructor(String.class,int.class);
                Person p = constructor.newInstance("zhangsan",26);
}
}


作者: 随然    时间: 2015-4-25 21:50
顶顶!!!
作者: 马士基    时间: 2015-4-25 21:51
int.class改成Integer.class试试,注意int是基本数据类型,不是类
作者: 随然    时间: 2015-4-25 22:41
马士基 发表于 2015-4-25 21:51
int.class改成Integer.class试试,注意int是基本数据类型,不是类

Integer。class就错了
只有int.class或Integer.TYPE才是基本数据类型字节码
不知道哪的问题,烦INg
作者: wkz_crystal    时间: 2015-4-25 22:51
呵呵,很简单,兄弟,把Person的构造函数标注为public修饰就OK了

作者: 随然    时间: 2015-4-25 22:53
wkz_crystal 发表于 2015-4-25 22:51
呵呵,很简单,兄弟,把Person的构造函数标注为public修饰就OK了

你为什么这么聪明!:hug:
作者: wkz_crystal    时间: 2015-4-25 22:58
随然 发表于 2015-4-25 22:53
你为什么这么聪明!

过奖了,实践积累经验哈!




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