一、反转(转移)管制(IOC Inverse of Control)
所谓的管制:就是对于成员变量赋值的控制权,谁有势力对成员变量进行赋值反转管制: 以前咱们为成员变量赋值的时候间接应用在类中new进去(如图1)然而这么做代码是是耦合的;所以为了更好地解耦合,Spring应用了工厂模式对代码进行了解耦(如图2),所以反转管制能够总结为: 把对于成员变量赋值的控制权,从代码中反转(转移)到Spring工厂和配置文件中实现,其 益处就是解耦合底层实现:工厂设计模式
二、依赖注入(dependency injection DI)
首先这里波及到两个名词,一个是依赖,另一个是注入对于注入后面曾经说得非常分明了,就是通过spring工厂和配置文件,为对象(bean、组件)的成员变量赋值那么所谓的依赖就是:当一个类须要另一个类的时候,这就意味着依赖,一旦呈现了依赖,就能够把另一个类(依赖类)作为本类(被依赖类)的成员变量进行注入(赋值)益处: 解耦合