DependencyInjection和没有DependencyInjection示例之间有什么区别?

时间:2018-02-05 21:55:39

标签: spring dependency-injection inversion-of-control

我遇到了关于DI而没有DI的例子。但是真的不能理解它是如何不同的。可能是完整代码连同值可能能够明确显示差异。不幸的是,我不确定如何使这些例子更明智或使差异清晰可见。有人可以提供适当的缺失代码,使其更加合理。附加示例的屏幕截图。 enter image description here

如何强迫一方而另一方不强?

1 个答案:

答案 0 :(得分:0)

<强> DI: 这意味着如果您需要/需要,您可以创建Employee类并注入 Address对象,这样就可以使用 any 您的员工的地址,而不必担心该字段(因为您不关心哪个地址,将由将使用此Employee类的人负责)。

基本上是这样的:

// constructing Employees from some other class

    Employee spanishEmployee = new Employee(spanishAddress);
    Employee russianEmployee = new Employee(russianAddress);

您将地址与员工分离。

没有DI: 您看到的第一个示例显示,在创建Employee对象时,您还需要担心有关Address字段,因为您的Employee将其作为依赖,您无法动态选择在创建员工时