最近在学习一些基础知识,本文是解释这三者之间的关系和意义,如果有错误的地方欢迎指出。
IOC
首先说一下IOC,IOC是一种思想。百度百科上:
控制反转(Inversion of Control,缩写为IoC),是面向对象编程中的一种设计原则,可以用来减低计算机代码之间的耦合度。通过控制反转,对象在被创建的时候,由一个调控系统内所有对象的外界实体将其所依赖的对象的引用传递给它。也可以说,依赖被注入到对象中。
所谓降低代码耦合度,这里的降低耦合度是指取消类与类之间的或者说类与对象之间的关系。
例如:Class A中用到了Class B的对象b,一般情况下,需要在A的代码中显式的new一个B的对象。
DI
DI是依赖注入,相当于实现IOC思想的方法。就是百度百科后面所说的:通过控制反转,对象在被创建的时候,由一个调控系统内所有对象的外界实体将其所依赖的对象的引用传递给它。也可以说,依赖被注入到对象中。
SoringIOC容器
springIOC容器是实现的具体工具。简称:工具人 他是依赖注入的具体实现方法