gpt4 book ai didi

java - 理解java中的DI

转载 作者:行者123 更新时间:2023-11-30 04:31:45 26 4
gpt4 key购买 nike

Possible Duplicate:
Understanding the need for a DI framework

我读过几篇关于 DI 的文章并与几位专业人士进行了交谈。我不明白的是如何 DI 解耦对象。下面的文章也描述了一个场景,但我不明白Spring如何帮助解耦PayrollApplication?解耦是通过多态而不是 DI 来完成的。 DI 定义还有其他一些目的......

http://www.developer.com/java/dependency-injection-in-existing-java-code.html

提示和引用就可以了。谢谢

最佳答案

解耦不是一个全有或全无的概念。在本文中,仅使用多态性(“设计 2”)在一定程度上解耦了对象,但在编译 PayrollApplication 时,PayrollApplication 类仍然必须了解 Employee 实现。

Employee 实现是 PayrollApplication 的依赖项,通过依赖注入(inject),您可以实现更高级别的解耦:您可以编译 PayrollApplication,使其仅引用 Employee 接口(interface),并提供 Employee 实现(可能由另一个团队编写)组织)稍后再说。

另请查看 Wikipedia关于依赖注入(inject):

The primary purpose of the dependency injection pattern is to allow selection among multiple implementations of a given dependency interface at runtime, or via configuration files, instead of at compile time. The pattern is particularly useful for providing stub test implementations of complex components when testing, but is often used for locating plugin components, or locating and initializing software services.

关于java - 理解java中的DI,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14485594/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com