类ShinyCoinProvider
和RustyCoinProvider
两者都实现Provider<Coin>
并且每个都产生一个Coin
具有略微不同属性的对象。
另一组两个客户端类RichPlayer
,需要一个由 Guice 库自动注入PoorPlayer
的实例。Coin
现在 Guice 需要ShinyCoinProvider
在课堂Richplayer
中RustyCoinProvider
使用。PoorPlayer
因此简单,bind().toProvider()
在这里还不够。
如何将不同的提供者显式绑定到不同的客户端类,其中提供的对象是相同类型的?