当我们做一个

bind(ClassName).toInstance(new ClassName())
 在configure方法内部,我们实际上意味着默认情况下它是“渴望初始化的单例”吗?

如果是,添加的用途是什么

bind(ClassName).toInstance(new ClassName()).asEagerSingleton()

最佳答案

无法附加.asEagerSingleton()

complete signature of toInstance是以下内容:

void toInstance(T instance)


由于toInstance(T)不返回任何内容,因此无法与.asEagerSingleton()链接。如果这样做,编译将失败。

正如您所怀疑的那样,toInstance已经是一个渴望加载的单例,这就是为什么它是一个链终止方法(void)而不是可以进一步范围限制的绑定声明的原因。

09-25 21:44