gpt4 book ai didi

java - Guice - 创建到 java.lang.class 的绑定(bind)

转载 作者:塔克拉玛干 更新时间:2023-11-01 22:10:08 25 4
gpt4 key购买 nike

Guice 是否有任何巧妙的方法(如果有的话)以某种方式将类类型绑定(bind)到接口(interface)?我指的不是类的实例,而是实际的 java.lang.class 类型本身。

即(显然行不通,但告诉我我在做什么):

bind(MyInterface.class).to(Class<MyImplementation>)

我知道一开始似乎不可能,但我不知道是否有任何技巧可以做到这一点。我想到的一个方法是将类类型包装在一个实际实例化的对象或其他东西中,但这似乎是最后的手段。

任何想法将不胜感激。谢谢!

最佳答案

我在 RTFM 之后弄明白了。我只是错过了“toInstance”方法的存在:

bind(new TypeLiteral(Class<? extends MyInterface>)(){}).toInstance(MyImplementation.class)

希望这对遇到类似问题的其他人有所帮助!

关于java - Guice - 创建到 java.lang.class 的绑定(bind),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24691248/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com