参考资料
dagger2简单demo使用
dagger2详细介绍及深入
知识点总结
1.依赖注入的过程
1。查找Module中是否存在创建该类型的方法(前提是@Conponent标记的接口中包含了@Module标记的Module类,如果没有则直接找@Inject对应的构造方法)
- 若存在方法,查看该方法是否有参数
- 1.若不存在参数,直接初始化该类的实例,一次依赖注入到此结束。
- 2.若存在参数,则从步骤1开始初始化每个参数
- 若存在方法,查看该方法是否有参数
2.若不存在创建类方法,则查找该类型的类中有@Inject标记的构造方法,查看构造方法中是否有参数
- 若构造方法中无参数,则直接初始化该类实例,一次依赖注入到此结束。
- 若构造方法中有参数,从步骤1依次开始初始化每个参数。