依赖注入一般指控制反转。

依赖注入,Dependency injection.也叫控制反转(IoC),就是通过一定的规则管理对象间的依赖关系。

控制反转(Inversion of Control,缩写IoC)是一个重要的面向对象编程的法则来削减计算机程序的耦合问题,也是轻量级的Spring框架的核心。控制反转一般分为两种类型,依赖注入(Dependency Injection,简称DI)和依赖查找(Dependency Lookup)。

依赖注入:如果Class B是Class A的Dependency(依赖),B的赋值不是写死在类或构造函数中,而是通过构造函数或其他函数的参数传入,这种赋值方式称之为依赖注入。

依赖注入产生原因,要解决什么问题,怎么解决?(面向接口即面向抽象编程)

  • 松散耦合
  • 可维护
  • 可测试

##Dagger

  • Dagger组件通过annotation实现了依赖注入。
  • Dagger不支持函数注入。(若某些类不需要Inject任何对象,而又希望由Dagger创建该类对象。这时,应该至少添加一个@inject的默认构造函数,否则会报异常)