BeanDefinition -> 实例化 -> 依赖注入 -> 初始化 -> 放到容器中使用 -> 销毁
1. 先通过配置文件或者注解拿到所有的BeanDefinition,并放到BeanDefinitionMap中
2. 从BeanDefinitionMap中拿到bean定义并进行实例化 new
3. 依赖注入,给容器中bean中的属性赋值
4. 初始化,给属性赋值
5. 初始化完成后,bean真正创建完成,就可以把bean放到Spring容器中,ConcurrentHashMap,我们使用的时候就可以通过getBean来获取bean
6. 容器销毁的时候,bean也会跟着销毁
BeanDefinition是bean定义。描述的是 这个bean的类型,即这个bean的名字、有哪些属性、有哪些构造函数、有哪些方法。