如果需要注入某个参数化类型,比如List<String>:

class Example { @Inject void setList(List<String> list) { ... }}


可以使用TypeLiteral 来创建这个绑定。TypeLiteral 为一特殊类型可以用于表示参数化类型。

@Override public void configure() {bind(new TypeLiteral<List<String>>() {}).toInstance(new ArrayList<String>());   }


或者使用@Provides 方法:

@Provides List<String> providesListOfString() { return new ArrayList<String>();}


到目前为止,基本介绍了Google Guice 的用法,上面用法也适用于Java SE,Java EE平台,更详细的可以参见英文文档 ,后面接着介绍和Android平台相关的Dependency Injection (Roboguice)的用法。

更多相关文章

  1. Android(安卓)RectF()用法
  2. ButterKnife的用法。针对android studio3.6.1 ButterKnife10.0.0
  3. Android(安卓)关闭多个视图Intent.FLAG_ACTIVITY_CLEAR_TOP用法
  4. android 输入框 XML 设置于代码设置异同
  5. android--------自定义控件 之 方法篇
  6. Android反射机制实现与原理
  7. Android(安卓)Handler 用法解析
  8. ListView的Adapter使用 之 初学ArrayAdapter String
  9. Android如何优雅地向Fragment传递参数

随机推荐

  1. 让Android程序获得系统的权限,实现关机重
  2. C:Android camera S:PC opencV阶段总结
  3. 随便聊聊android的源码
  4. Android与Js相互调用基础篇
  5. Android(安卓)帧(frame)动画
  6. 关于Android 如何实现mobile data on/off
  7. Android(安卓)Studio3.4 中无法找到Andro
  8. Android实现过渡动画、引导页 Android判
  9. 割不开的Google,舍不下的Android
  10. Android也架构之三:简单工厂模式优化网络