6
假設我有以下模式在我的代碼往往重複:Guice:我如何爲所有類型綁定泛型?
class A<T> {
@Inject
public A(List<T> list) {
// code
}
}
我要綁定所有List<T>
到ArrayList<T>
。 我知道我可以使用TypeLiteral
s來綁定一個明確的原始類型,例如,List<String>
,但無論如何要爲所有類型執行此操作嗎?
基本上,這個代碼不應該失敗,因爲我沒有綁定列表中明確:
injector.getInstance(new Key<A<Integer>>(){});
。這不可能。 –
這種「通配符」綁定的一些討論可以在這裏找到:https://github.com/google/guice/issues/852 –