@Inject 提供依赖的构造函数,或者需要依赖的成员变量 @Module 提供依赖,实例化的地方( 使用module实例化,方便测试的时候替换成其他对象,而这也是和构造方法注入的区别,如果用构造方法注入,则做不到测试的时候随意替换) @Component 一个连接者,把module和需要依赖的地方连接起来 步骤1:查找Module中是否存在创建该类的方法. 步骤2:若存在创建类方法,查看该方法是否存在参数 步骤2.1:若存在参数,则按从步骤1开始依次初始化每个参数 步骤2.2:若不存在参数,则