学习记录301@Spring 控制反转和依赖注入的理解

我的理解

传统调用者调用被调用者:在调用者内new 被调用者,再使用其方法
控制反转:有一个单独的容器(spring)管理对象,需要对象,找容器要,不用自己创建了
依赖注入:其实是控制反转的另一种说法

传统做法

在这里插入图片描述

Spring

在这里插入图片描述

Spring的优点

将调用者和被调用者分离,各司其职,也就是解耦。
按照传统的做法,必须在内部创建被调用者对象,然后调用其方法,但是如果被调用者的代码改变,比如构造方法需要传入其他参数,那么调用者那里就需要改变new 传入的参数情况。
但是使用spring,只需要修改配置文件即可,调用者使用被调用者是不会改变的,因为真正管理和创建对象的是Spring。
有人可能想说,这不还是要修改配置文件吗,事实确实如此,但是我们对外的代码没变,仅仅是对内的改变而已。

猜你喜欢

转载自blog.csdn.net/weixin_44663675/article/details/108034447