通过反射创建运行时类的对象

本文探讨了Java反射API中的newInstance()方法,该方法用于在运行时创建对象,依赖于类的公共无参构造器。为了保证newInstance()正常工作,运行时类必须提供一个公共的无参构造器,且其访问权限需为public。这个特性在JavaBean中尤其重要,因为它允许通过反射创建对象,并确保子类继承时能调用到父类的构造器。
摘要由CSDN通过智能技术生成

通过反射创建运行时类的对象

  • newInstance():调用此方法,创建对应运行时类的对象,内部是调用了运行时类的空参构造器
  • 要想此方法正常运行,要求:
    • 运行时类必须提供空参构造器
    • 空参构造器的访问权限得够,通常设置为public
public static void main(String[] args) throws IllegalAccessException, InstantiationException {
    Class clazz= Person.class;
    Person obj = (Person) clazz.newInstance();
    System.out.println(obj);

}
  • 在javabean中,要求提供一个public的空参构造器,原因是:
    • 便于通过反射去创建运行时类的对象
    • 便于子类继承此运行时类时,默认调用super()时,保证父类有此构造器
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值