0

我有一个关于 Guice 的问题。我有一个接口 IMyInterface,MyClass 类实现了它。

public class MyClass {
   public MyClass(IMyWorker);
}

IMyWorker 接口有两个实现者 MyWorker1 和 MyWorker2。

我得到的绑定是:

    bind(IMyInterface.class).to(MyClass.class);
    bind(IMyWorker.class).annotatedWith(W1.class).to(MyWorker1.class);
    bind(IMyWorker.class).annotatedWith(W2.class).to(MyWorker2.class);

W1 和 W2 是定义的注释。

我的问题是:当我创建 MyClass 的实例时,如何指定要注入到 MyClass 的构造函数中的 Worker?

非常感谢。

4

1 回答 1

1

将注解添加到MyClass.

@Inject
public MyClass(@W1 IMyWorker worker) 
{
    ....
}

这样一个类的实例MyWorker1将被注入。

于 2012-04-13T11:00:37.683 回答