存在
是否需要注入
二级缓存
反射创建
依赖注入
不需要,扫描下一个
扫描实例参数
singleton是否null
还没有标记,返回null
是
需要注入
打标记
一级缓存
定义,初始化singleton=null
不存在
是否标记
getBean(autowiredBeanName)
返回
否
存一级缓存
存三级缓存
存入
返回实例
高等数学语言描述f(x)、g(x) 混合函数f(x)=2x+exg(x)=x2+arctanxf(g(f(x)))=2((2x+ex)2+arctan(2x+ex))+e((2x+ex)2+arctan(2x+ex))所以最里面的f(x)是没有回调的,最干净的,最原始的
标记
getBean(beanName)