为了账号安全,请及时绑定邮箱和手机立即绑定

下面的代码或出现异常,该如何解决呢?

下面的代码或出现异常,该如何解决呢?

守候你守候我 2023-04-08 14:10:53
package com.itheima;import java.lang.reflect.Constructor;class Person { private String name; //姓名 private int age; //年龄 /** 构造方法 */ public 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 class Test7 { public static void main(String[] args) throws Exception { //获取Person类的字节码 Class<Person> cla = (Class<Person>) Class.forName("com.itheima.Person"); //通过字节码获得构造方法 Constructor<Person> constructor = cla.getConstructor(String.class, Integer.class); }}运行上面的程序,出现如下异常:
查看完整描述

2 回答

?
qq_花开花谢_0

TA贡献1835条经验 获得超7个赞

Constructor<Person> constructor = cla.getConstructor(String.class, Integer.class);你这里想要使用的构造方法的第二个参数是Integer的,而你声明的构造函数的第二个参数是int的。Integer.TYPE表示int类型

查看完整回答
反对 回复 2023-04-11
?
MYYA

TA贡献1868条经验 获得超4个赞

很简单,获取构造方法的时候,第二个参数应该是int.class,而不是包装类Integer

查看完整回答
反对 回复 2023-04-11
  • 2 回答
  • 0 关注
  • 115 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信