IOC(控制反转):
那么 IoC 是如何做的呢? 有点像通过婚介找女朋友, 在我和女朋友之间引入了一个第三者: 婚姻介绍所婚介管理了很多男男女女的资料, 我可以向婚介提出一个列表, 告诉它我想找个什么样的女朋友, 比如长得像李嘉欣, 身材像林熙雷, 唱歌像周杰伦, 速度像卡洛斯, 技术像齐达内之类的, 然后婚介就会按照我们的要求, 提供一个 mm, 我们只需要去和她谈恋爱结婚就行了简单明了, 如果婚介给我们的人选不符合要求, 我们就会抛出异常整个过程不再由我自己控制, 而是有婚介这样一个类似容器的机构来控制 Spring 所倡导的开发方式就是如此, 所有的类都会在 spring 容器中登记, 告诉 spring 你是个什么东西, 你需要什么东西, 然后 spring 会在系统运行到适当的时候, 把你要的东西主动给你, 同时也把你交给其他需要你的东西所有的类的创建销毁都由 spring 来控制, 也就是说控制对象生存周期的不再是引用它的对象, 而是 spring 对于某个具体的对象而言, 以前是它控制其他对象, 现在是所有对象都被 spring 控制, 所以这叫控制反转
来源: http://www.bubuko.com/infodetail-2540724.html