Dagger 是一种Android平台的依赖注入框架,是有一家专注于移动支付的公司,Square公司推出的库。
特性
使用 JSR-330标准注解进行构造器注入
使用@Provides注解创建对象
针对依赖树的中心上下文
昂贵资源延迟注入
同一接口的多种实现
静态注入 (针对遗留环境)
绑定的编译时验证
使用例子
我们来设计Heater、Pump、Drink这三个接口,如下:
package com.example.app.dagger;
interface Heater {
void on(); //加热器打开
void off();//加热器关闭
boolean isHot();//加热是否完毕
}
package co