从该例子出手,底层源码法分析
ApplicationContext applicationContext= new ClassPathXmlApplicationContext(bean.xml);
ioc实例化为何可以这样,首先我们来看看底层,如图为ApplicationContext为最底层接口,该接口以下的子接口或者实现类。
由下图可知ApplicationContext的这么多的实现类都对应着不同的实现方法
例如:有通过xml配置的获取的实现类,有通过Annotation(注解)获取的实现类 等等。
通过底层源码的分析,到了现在,我们彻底不同在程序中去改动了,要实现不同的操作,只需要在xml配置文件中进行修改,所谓的IOC,一句话搞定:对象由Spring来创建,管理,装配!