美文网首页
一篇不错的Dagger2文章

一篇不错的Dagger2文章

作者: 无_理 | 来源:发表于2017-09-19 16:44 被阅读0次

    [Dagger2学习入门]https://segmentfault.com/a/1190000008677663#articleHeader9

    一、@Inject
    主要是用来标注目标类的依赖和依赖的构造函数。
    二、@Provides
    Module和Provides是为解决接口、第三方类库等没有构造方法情景而生的。
    @Provides 是module类对外提供实例方法的注解,必须在 @Moudle 内部。
    @Provides 修饰的方法的方法名建议以 provide 开头。
    三、@Module
    @Module 一般用来标记类,该注解告知 Dagger2 可以到该类中寻找需要的依赖。Module其实是一个简单工厂模式,Module里面的方法基本都是创建类实例的方法。
    四、@Component
    Component它是一个桥梁,一端是目标类,另一端是目标类所依赖类的实例,它也是注入器(Injector)负责把目标类所依赖类的实例注入到目标类中,同时它也管理Module。
    Component 可以组合不同的 Module 和 Component。
    五、@Subcomponent
    @Subcomponent 功能类似 component 的 dependencies。但是使用 @Subcomponent 不需要在父 component 中显式添加子 component 需要用到的对象,只需要添加返回子 Component 的方法即可,子 Component 能自动在父 Component 中查找缺失的依赖。
    六、@Qualifier
    用于标识、区分。
    七、@Scope(作用域)
    范围

    相关文章

      网友评论

          本文标题:一篇不错的Dagger2文章

          本文链接:https://www.haomeiwen.com/subject/hjfgsxtx.html