三、【源码】Bean有参构造实例化

源码地址:https://github.com/spring-projects/spring-framework

仓库地址:https://gitcode.net/qq_42665745/spring/-/tree/03-parameter-constructor-instantiation

Bean有参构造实例化

有参构造的实例化分两种:

  • java自带的反射
  • cglib代理生成目标类的子类

流程:

1.创建BeanFactory工厂
2.注册和管理UserService的BeanDefinition元数据
3.根据beanName和args获取bean对象,先从单例表中获取,有直接返回;没有就先去拿BeanDefinition,然后使用BeanDefinition进行实例化
4.先判断使用有参构造还是无参构造实例化bean,然后策略模式调用真正的实现类做实例化。
getBean()的args传null,使用无参构造实例化Bean
5.将Bean放入单例表中

在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值