控制反转(IOC)VS 依赖注入(DI)
控制反转(IOC)VS 依赖注入(DI)
- 1、控制反转(IOC)
- 2、依赖注入(DI)
- 3、关系
💖The Begin💖点点关注,收藏不迷路💖 |
1、控制反转(IOC)
定义:
将对象之间的依赖关系管理交给外部容器(如Spring),而不是在代码中直接创建和维护。
优点:
- 降低耦合度
- 提高可维护性和可扩展性
Spring实现:
通过BeanFactory
接口,Spring容器管理bean的创建和依赖关系。
2、依赖注入(DI)
定义:
容器在创建对象时,将对象所需的依赖项注入到对象中。
实现方式:
- 构造器注入 :通过构造器传递依赖项。
- Setter方法注入 :通过setter方法传递依赖项。
- 接口注入(较少使用):通过实现特定的接口来传递依赖项,但在Spring中通常不使用这种方式。
优点:
- 代码简洁
- 提高测试性
- 灵活性高
3、关系
控制反转是目标,依赖注入是实现手段。通过依赖注入,Spring容器实现控制反转。
💖The End💖点点关注,收藏不迷路💖 |