1. 扫描包路径,将所有带有compont注解的类放到beanDefinitionMap 中
讲bean 都扫描到 beanDefinitionMap 中
private final MapbeanDefinitionMap = new ConcurrentHashMap<>(256);
2. bean 实例化
方法调用链
AbtractApplicationContext.refresh()
--> AbtractApplicationContext.finishBeanFactoryInitialization()
--> DeFaultListAbleBeanFactory.preInstantiateSingletons()
--> AbtractBeanFactory.doGetBean()
-->AbstractBeanFactory.createBean()
-->AbstractAutowireCapableBeanFactory.createBean()
-->AbstractAutowireCapableBeanFactory.doCreateBean()
-->AbstractAutowireCapableBeanFactory.instantiateBean()
最终通过一个lambda表达式把创建出来的bean 放到单例池 singletonObjects 中去
org.springframework.beans.factory.support.DefaultSingletonBeanRegistry#getSingleton(java.lang.String, org.springframework.beans.factory.ObjectFactory>)



