Dagger2_daggerlimit

Dagger2_daggerlimit参考Android_Dagger2篇——从小白最易上手的角度+最新dagger.android步骤1.在需要实例化的类中,构造无参构造方法,注解@Inject@InjectpublicStudent(){}构造Component接口,有inject方法@ComponentpublicinterfaceDaggerComponent{voi…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

参考
Android_Dagger2篇——从小白最易上手的角度 + 最新dagger.android
都是套路——Dagger2没有想象的那么难

一、无module方式,无参构造

(最简单,但是不常用)

1. 在需要实例化的类中,构造无参构造方法,注解@Inject

必须是无参构造方法

@Inject
public Student() {
}

Jetbrains全家桶1年46,售后保障稳定

2. 构造Component接口,有inject方法

@Component
public interface DaggerComponent {
    void inject(MainActivity activity);    //要注入的类
}

3. Make Project (Ctrl+F9)

4. 在需要注入的类中调用

@Inject Student mStudent;
DaggerStudentComponent.create().inject(this);   //该方法执行成功即可以调用对象

二、有module方式

1. 在需要实例化的类中,构造方法注解@Inject

可以带有参数

@Inject
public Student(String name, int age) {
    this.name = name;
    this.age = age;
}

2. 构造Module类

  • 注解@Module
  • 构造一个返回类型为需要注入对象的方法,注解@Provides
@Module
public class StudentModule { 
   
    @Provides
    Student provideStudent() {
        return new Student("张三", 18);
    }
}

3. 构造Component接口,有inject方法

@Component(modules = StudentModule.class)   //与上面唯一的区别在此
public interface StudentComponent {
    void inject(MainActivity activity);
}

4. 在需要注入的类中调用

使用builder方式而不是create注入

@Inject Student mStudent;
DaggerStudentComponent.builder().studentModule(new StudentModule()).build().inject(this);

注意

  1. @Inject只能注解一个构造方法
  2. @Module级别高于@Inject
  3. @Component可以标注接口,也可以标注抽象类
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/198872.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • C++面试题之虚函数(表)实现机制

    C++面试题之虚函数(表)实现机制前言大家都应该知道C++的精髓是虚函数吧?虚函数带来的好处就是:可以定义一个基类的指针,其指向一个继承类,当通过基类的指针去调用函数时,可以在运行时决定该调用基类的函数还是继承类的函数.虚函数是实现多态(动态绑定)/接口函数的基础.可以说:没有虚函数,C++将变得一无是处!既然是C++的精髓,那么我们有必要了解一下她的实现方式吗?有必要!既然C++是从C语言的基础上发展而来…

    2022年7月13日
    15
  • 一文读懂PID控制算法(抛弃公式,从原理上真正理解PID控制)「建议收藏」

    一文读懂PID控制算法(抛弃公式,从原理上真正理解PID控制)「建议收藏」一文读懂PID控制算法(抛弃公式,从原理上真正理解PID控制)PID控制应该算是应用非常广泛的控制算法了。小到控制一个元件的温度,大到控制无人机的飞行姿态和飞行速度等等,都可以使用PID控制。这里我们从原来上来理解PID控制。PID(proportionintegrationdifferentiation)其实就是指比例,积分,微分控制。先把图片和公式摆出来,看不懂没关系。(一开始看这…

    2022年5月3日
    49
  • goland 2021.1.3 激活(在线激活)

    goland 2021.1.3 激活(在线激活),https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月14日
    520
  • 系统首选dns服务器修改,Windows系统首选DNS如何设置

    系统首选dns服务器修改,Windows系统首选DNS如何设置Windows系统首选DNS如何设置的呢,有时候可能需要修改或者调整DNS服务器地址的设置,以达到优化网络连接速度的效果。该怎么办?下面是学习啦小编收集整理的Windows系统首选DNS如何设置,希望对大家有帮助~~Windows系统首选DNS的设置方法一:在图形界面下设置DNS服务器址1这里Windows8为例,首先在屏幕的右下角找到“网络连接”图标,如图所示2在“网络连接”…

    2022年5月4日
    95
  • 软件测试(3) UFT12使用_GUITest

    软件测试(3) UFT12使用_GUITest环境:UFT12,Win10,VS2015&VS2017启动UFT12,为了启动方便修改快捷方式。设置插件,WPF相关的都设置起来。新建项目点击录制按钮(F6),设置启动程序。确定,开始录制。程序启动,显示登录界面。操作:切换IP,点击按钮,登录。点击工具栏按钮,停止录制。点击运行按钮(F5)。

    2022年5月27日
    62
  • 策略模式Strategy——坐什么车回家?

    策略模式Strategy——坐什么车回家?

    2022年1月4日
    47

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号