Java Guice 3.0-构造函数绑定的用途?

Java Guice 3.0-构造函数绑定的用途?,java,guice,Java,Guice,我刚刚阅读了Guice的用户指南中有关的章节,但并不真正理解何时使用构造函数绑定 据我所知,它们提供与@Provider方法相同的功能,除了使用构造函数绑定创建的实例参与AOP之外。这是正确的吗?有人能举一个比文件中的例子更好的例子吗 据我所知,它们提供与@Provider方法相同的功能,除了使用构造函数绑定创建的实例参与AOP之外 这或多或少是正确的,尽管构造函数绑定有一些优点。基本上,它是一种绑定到类的方式,就好像它在特定构造函数上有一个@Inject,即使它没有,而且您不能自己添加注释。与

我刚刚阅读了Guice的用户指南中有关的章节,但并不真正理解何时使用构造函数绑定

据我所知,它们提供与@Provider方法相同的功能,除了使用构造函数绑定创建的实例参与AOP之外。这是正确的吗?有人能举一个比文件中的例子更好的例子吗

据我所知,它们提供与@Provider方法相同的功能,除了使用构造函数绑定创建的实例参与AOP之外

这或多或少是正确的,尽管构造函数绑定有一些优点。基本上,它是一种绑定到类的方式,就好像它在特定构造函数上有一个
@Inject
,即使它没有,而且您不能自己添加注释。与
@提供的
方法不同,您可以编写实用程序来完成更有趣的事情。例如,您可能有一个Utility方法,该方法返回类的唯一构造函数,如果存在多个异常,则引发异常:

bind(Foo.class).toConstructor(getOnlyConstructor(FooImpl.class));

如果出于某种原因需要,您还可以使用一些其他注释(除了
@Inject
),并使用一个实用方法获取用该注释进行绑定的构造函数。

它还解决了Guice的问题: