java通过反射创建对象的两种方式与区别

java反射 专栏收录该内容
2 篇文章 0 订阅

java通过反射创建对象的两种方式与区别

1.使用Class对象的newInstance()方法来创建对象:

具体步骤是:
1、获取类的Class对象(有三种方式可以获取,可以自行百度一下)
2、通过调用所获取到的Class对象的newInstance()来获得对象,该方法会返回一个Object类型的对象,所以还需要强转一下。
在这里s 插入图片描述

2.通过Constructor类的newInstance()方法获取

具体步骤是
1、获取一个类的一个Class实例
2、调用Class中的getConstructor()方法获得一个Constructor对象
3、调用Constructor的newInstance()方法获得一个类的实例
在这里插入图片描述

两种方法的区别

第一种方法:通过Class的newInstance()方法只能使用默认的构造方法,换句话说就是使用此方法是不能通过带参的构造函数来生成一个类的实例。

第二种方法:通过Constructor的newInstance()方法可以使用默认的构造方法,也可以使用带参的构造方法来生成一个类的实例。

注意:在只有一个默认的构造函数(或不带参数的构造函数)时,使用第一种方法比较方便,如果要使用类中的其他构造方法那只能使用第二种方法了。

  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2021 CSDN 皮肤主题: 深蓝海洋 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值