2012-01-21 11 views

答えて

3
public class TestGenericBinding { 
    static class A<T> { 
     T a; 
     @Inject A(T a) { 
     this.a=a; 
     } 
    } 

    @Test public void bindingWorked() { 
     Injector injector = Guice.createInjector(new AbstractModule() { 

     @Override 
     protected void configure() { 
      bind(Integer.class).toInstance(123); 
      bind(new TypeLiteral<A<Integer>>() {}); 
     } 
     }); 
     A<Integer> a = injector.getInstance(
      Key.get(new TypeLiteral<A<Integer>>(){})); 
     assertEquals(new Integer(123),a.a); 
    } 
} 
+0

それ、これはあなたの –

+1

@MairbekKhadikovのために働くの正しい答えとしてマークそれは、私は、そうするために感謝を計画するが、SOあなたは24時間のためのあなた自身の答えを受け入れることはできません。 –