哎,确定用Spring的框架,so,只好突击下下了...
IoC的基本概念
Inversion of Control,控制反转,别名Dependency Injection(依赖注入)
IoC就是从原来需要什么东西自己去拿,变为,需要什么东西就让别人送过来
在IoC场景中,二者通过IoC Service Provider打交道,所有被注入对象和依赖对象由IoC Service Provider统一管理
IoC模式3种依赖注入方式
构造方法注入:被注入对象可通过其构造方法中声明依赖对象参数列表,让外部(IoC容器)知道其需要哪些依赖对象
//定义构造函数注入,对象被构造完成,立即进入就绪状态
public FXNewsProvider(IFXNewsListener newsListener, IFXNewsPersister newsPersister){
this.newsListener = newsListener;
this.newsPersister = newsPersister;
}
setter方法注入:当前对象只要为依赖对象对应属性添加setter方法,就可以通过setter方法将相应的依赖对象设置到被注入对象中
public class FXNewsProvider{
private IFXNewsListener newsListener;
private IFXNewsPersister newsPersister;
//定义setter方法注入,可以在对象构造完成后在注入,相对来说更宽松
public void setNewsListener(IFXNewsListener newsListener){
this.newsListener = newsListener;
}
public void setNewsPersister( IFXNewsPersister newsPersister){
this.newsPersister = newsPersister;
}
}
接口注入:目前处于退役状态,比较前2中较死板繁琐。