Dagger 2 学习手记
导读:依赖注入
什么是依赖注入
依赖注入
Dependency Injection
, 用于实现 控制反转Inversion of Control
为什么使用依赖注入
控制反转用于解耦 类之间的耦合关系
依赖注入的方式
1. 构造函数注入
public class Gun {
private Bullet bullet;
public Gun(Bullet b) {
this.bullet = b;
}
}
2. 方法注入
public class Gun {
// ...
private Bullet bullet;
public void setBullet(Bullet b) {
this.bullet = b;
}
}
3. 接口注入
public interface BulletProvider{
// ...
setBullet(Bullet b);
}
public interface IBullet{
// ...
}
public class Gun implements BulletProvider {
private IBullet bullet;
// ...
public void setBullet(IBullet b) {
this.bullet = b;
}
}