在Java中使用TypeLiteral
请提供一些有关如何TypeLiteral
在Google
Guice或Java EE中使用的基本信息,如果使用简单的代码进行解释将非常有帮助,在此先感谢您
回答:
的目的TypeLiteral
在吉斯是允许你绑定类和实例以通用类型(与指定类型的参数)避免从一个事实,即泛型未用Java物化,即,从这样的事实而产生的问题,即擦除皮之间的差SomeInterface<String>
和SomeInterface<Integer>
在运行。TypeLiteral
通过创建泛型类型的
临时 子类,允许泛型参数的值在擦除后幸存下来。
示例用法TypeLiteral
:
bind(new TypeLiteral<SomeInterface<String>>(){}) .to(SomeImplementation.class);
这会将类型的参数绑定SomeInterface<String>
到SomeImplementation
类。
有关一些背景信息,请参阅有关超级类型令牌的博客文章,然后有关类型文字的文章。
以上是 在Java中使用TypeLiteral 的全部内容, 来源链接: utcz.com/qa/402583.html