首先了解一点:spring单例对象的初始化大略分为三步
只要理解两点:
1.Spring是通过递归的方式获取目标bean及其所依赖的bean的;
2.Spring实例化一个bean的时候,是分两步进行的,首先实例化目标bean,然后为其注入属性。结合这两点,也就是说,Spring在实例化一个bean的时候,是首先递归的实例化其所依赖的所有bean,直到某个bean没有依赖其他bean,此时就会将该实例返回,然后反递归的将获取到的bean设置为各个上层bean的属性的。
不够详细,待深入!!!