下面这种类型的代码我见过很多:
private final Map<String, String> map;
public SomeConstructor() {
this.map = new HashMap<String, String>();
}
好吧,通过将 map 作为参数传递给 SomeConstructor,可以轻松替换此类代码。 扩展我的问题,在某些情况下,依赖注入(inject)不是正确的做法,而是使用构造函数进行初始化吗?
最佳答案
如果您可能想注入(inject)不同类型的参数,请使用依赖注入(inject),这不仅仅是一个内部细节。在像这样的简单情况下,另一个类可能不想注入(inject)映射类型——这是一个内部细节。但是,对于数据库服务之类的东西,您可能希望注入(inject)不同的类型(以及用于测试的 stub )。
关于java - 有没有不应该应用依赖注入(inject)的情况?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19671860/