这个是博主链接:https://blog.csdn.net/qq_22654611/article/details/52606960/
1、什么是ico:Ioc—Inversion of Control,即“控制反转” 是一种java的设计思想
2、来说说谁控制了谁:容器控制外部资源获取(不只是对象包括比如文件等)。
3、怎么反转:正常来说都是自己创建对象,然后自己来找自己所需的依赖对象,这样叫正转,反转则为由ioc容器为你找你需要依赖的对象,你被动接收。
4、什么是DI:I—Dependency Injection,即“依赖注入” 在spring中对象之间的依赖是由容器控制的
5、谁依赖了谁:在spring中就是应用程序依赖了ioc容器
6、为什么要依赖:应用程序需要ioc来提供对象所需的一些外部资源
7、谁注入了谁:ioc注入了程序所需的依赖对象
8、注入了什么:某个对象所需的外部资源
通俗来说:ioc就像是个招聘网站,面试官就是一个创建的对象,我就像是一个求职者,面试官只需要把自己需要的人的一些信息告诉招聘网站,由招聘网站来找我,然后面试官只用面试,通过后我入职,不通过就是报异常这个就是控制反转
一般说都是有我们自己创建对象a,然后我们需要对象b来和a共同完成一个功能,这样a就要使用b,这样他们之间就产生了依赖,也存在一种耦合关系,但是使用spring之后就是有ioc来穿件a所需要的b对象,至于怎么创建的a不需要知道,这样就降低了耦合度,a只需要在用到之前存在容器中b对象的时候去问ioc要就可以了这就是spring的DI
此文为看博客后的总结,以便以后脑补使用