Dagger2学习笔记1(基础概念学习)

什么是依赖:

依赖是开发过程中最常见的,举个简单的例子

public class A {
  public A(){
      B b = new B();
      ....
  }
}

public class B {
  
}

B 对象是在 A 中进行实例化, A 对象就依赖于 B,如果当 B 的构造方法发生改变时, 我们不仅需要修改一处, 还需要把所有引用 B 对象实例化的地方全部重新修改一次, 不利于代码的维护, 也不符合我们的编程思想, 想要让代码独立性更高便需要使用依赖注入.

什么是依赖注入

如上文所说, 为了使代码更加独立, 我们不采用在一个类中直接创建另一个类的方式, 而是我们需要这个类时直接把这个类的对象拿过来使用即可, 减少代码之间的依赖性.
其实我们在编写代码的时候已经使用过一些简单的依赖注入:
1.通过构造方法进行依赖

public class A {
    public A(B b){
        b.print();
    }
}
  1. 通过 set方法
public void setB(B b){
    this.b = b;
}
  1. 通过实现接口的方式
/**
 *定义接口
 */
interface UserInject{
    void inject(User user);
}

/**
 * 实现接口类
 */
class UserImpl extends  UserInject{

    @Override
    public void inject(User user) {
        user.....
    }
}
  1. 通过注解, 如Dagger2依赖注入框架
class UserImpl{
    @Inject
    User user;
}

以上是 学习 Dagger2 之前的基础概念, 下一篇文章中我们将开始介绍如何使用 Dagger2.
Dagger2学习笔记2(学习Dagger2的简单使用)
Dagger2学习笔记3(各个注解学习)
Dagger2学习笔记4(@Singleton 与@ Scope 实现全局单例与作用域单例)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 一、首先你要知道什么是依赖? 想要理解Dagger2,首先你要理解一个概念,就是什么是依赖,懂的同学可以省过此段。...
    为梦想战斗阅读 3,304评论 0 0
  • 前言 Dagger2 当前Android流行的依赖注入框架。未来Android应用的趋势也许是MVP+Retrof...
    DorisSunny阅读 5,144评论 0 3
  • dagger2的缘由背景 dagger2除了也有一段时间了,但是现在各大开源项目都在使用它,虽然感觉他的用处并不是...
    vison123阅读 3,214评论 0 1
  • 觉得很开心,这一年胃口变得好,不在失眠,不在焦虑,偏头痛很少复发,体重胖了整整30斤,过去带给我的负面影响终于消失...
    刘頔頔阅读 1,040评论 0 0
  • 鼓足了勇气删除他了,不知道有多大,最终删除了。爱了很久,既然他说他还爱我,这样也就足够了。 他想分开那就让我来...
    猪的珠珠阅读 594评论 0 0