Spring中的IOC与DI理解总结

引入:
Spring的核心就是Ioc和DI,并通过俩者解耦。

IOC

推荐阅读:
https://blog.csdn.net/yexunce3159/article/details/82710583
个人理解:
在层层嵌套的类中,传统的方式是:每一层都new上一层的对象,然后调用方法。这样在最底层如果方法发生改变,那么之后的每一层都将改变。IOC思想中中,每一层不直接的new对象,而是将上一层的类作为参数传入下一层。

在使用时,才开始new全部的对象,这样当最底层的类发生变化时,只需要改变这一个发生变化的类即可。传统方式,对象由上一层进行管理创建,IOC中对象被IOC容器统一管理创建,对象的创建管理发生了变化,即为控制反转。

DI

DI(Dependency Injection)依赖注入,指容器复制创建和维护对象之间的依赖关系,而不是通过对象本身复制自己的创建和解决自己的依赖。控制反转是通过依赖注入实现的。

其实Ioc和DI在Spring中是一个等同的概念。如果非要咬文嚼字的话,控制反转是依赖注入的一部分,或者说是同一个行为偏重点不同的俩个称呼。

他们是从不能的角度阐述同一个功能,描述的对象不同而已。依赖注入是从程序本身来说,控制反转是从容器来说的。

下图为IOC容器的注入过程:
在这里插入图片描述
IOC和DI的关系简短的总结:
https://blog.csdn.net/q649381130/article/details/78465668

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值