什么是依赖注入?
依赖注入是在编译阶段尚未知所需的功能是来自哪个的类的情况下,将其他对象所依赖的功能对象实例化的模式。这就需要一种机制用来激活相应的组件以提供特定的功能,所以依赖注入是控制反转的基础。否则如果在组件不受框架控制的情况下,框架又怎么知道要创建哪个组件?
在 Java 中依赖注入有以下三种实现方式:
- 构造器注入
- Setter 方法注入
- 接口注入
哪种依赖注入方式你建议使用,构造器注入,还是 Setter 方法注入?
构造器注入和 Setter 方法注入。最好的解决方案是用构造器参数实现强制依赖,setter 方法实现可选依赖。