1、
2、
3、定位、加载、注册
定位:资源配置import,classpath,url
加载:解析配置文件,把bean包装成BeanDefinition对象
注册:把已经初始化的BeanDefinition对象放到IOC容器中
4、异常
1、加载配置文件出错的时候
2、解析类出错的时候
3、初始化抛出不可预知异常的时候
以上都会导致IOC容器初始化终止
出现异常会调用两个方法
// Destroy already created singletons to avoid dangling resources.
destroyBeans();
// Reset 'active' flag.
cancelRefresh(ex);