我正在为依赖注入容器的想法而苦苦挣扎。
不知道如何解释,但我会尝试几个例子:
class foo
{
public function __construct(\Somenamespace\Bar $bar, $x)
{
}
}
DIC 怎么知道“x”是什么?
如果我们再往前走,看看酒吧班。DIC 可以毫无问题地通过反射创建 Bar。
namespace \Somenamespace;
class bar
{
public function __construct(\SomethingElse\Tap $tap, $y)
{
}
}
酒吧想要水龙头,DIC 也可以找到水龙头,但它如何知道“y”?
如果我们创建水龙头。
namespace\SomethingElse;
class tap
{
public function __construct($amountOfTaps)
{
}
}
DIC 如何知道抽头数量或任何变量?
编辑:
同样的问题也适用于提示类型是接口还是抽象类。DIC 如何确定他需要创建什么?