1

Guice を使用して、バインドされたワイルドカード クラスを挿入したいと考えています。明確にするために、私はobjectを注入したくありませんが、class typeを注入します。は次のように読みます。

class A {
   Class<? extends SuperClass> a;
   @Inject A(Class<? extends SuperClass> a) {
      this.a = a.;
   }
}

パラメータを正しくバインドするにはどうすればよいですか?

4

1 に答える 1

1

このバインディングを使用します。

bind(new TypeLiteral<Class<? extends SuperClass>>() {})
    .toInstance(SubClass.class);
于 2012-01-04T22:31:50.100 に答える