IoC与DI
2016-10-19 23:06
281 查看
DI依赖注入
如果在ClassA中,有ClassB的实例,则称ClassA对ClassB有一个依赖。依赖
public class Human { ... Father father; ... public Human() { father = new Father(); } }
很显然用这种方式new 依赖的对象,如果需要不同的方式取new的话,需要修改Human中的代码,是很麻烦的。这时就有了依赖注入技术
DI的多种方式
1.构造器注入
public class Human { ... Father father; ... public Human(Father father) { this,father = father; } }
2.Setter方法注入
public class Human { ... Father father; ... public void setFather(Father father) { this,father = father; } }
3.接口注入
interface FatherInstanceInterface { public void setFather(Father father); } public class Human implements FatherInstanceInterface{ ... Father father; ... public void setFather(Father father) { this,father = father; } }
接口注入和setter方法注入类似,不同的是接口注入使用了统一的方法来完成注入,而setter方法注入的方法名称相对比较随意。
4.注解注入
public class Human implements FatherInstanceInterface{ ... @xxxxx Father father; ... }
通过专们的容器对注解扫描,再进行注入
IoC控制反转
是一种设计原则,用来减低耦合度。通过控制反转,对象在被创建的时候,依赖被注入到对象中。DI是IoC的方式
控制反转是一种思想
依赖注入是一种设计模式
相关文章推荐
- IOC/DI的基本思想
- IOC/DI 控制反转/依赖注入
- [readable]轻松学,浅析依赖倒置(DIP)、控制反转(IOC)和依赖注入(DI)
- PHP的依赖注入(DI) 和 控制反转(IoC)
- 深入理解DIP、IoC、DI以及IoC容器
- 控制反转(IOC)和依赖注入(DI)的区别
- Spring IOC/DI 基本配置 及测试 /注入对象 火推
- 如何理解spring中的IOC(控制反转)、DI(依赖注入)?
- OOP、DI、IOC的关系
- 对IOC于DI的一些理解
- 控制反转(IOC),依赖注入(DI),耦合
- 深入理解DIP、IoC、DI以及IoC容器
- 第二章 深入探讨控制反转(Ioc)和依赖注入(DI)
- 控制反转(IOC)和依赖注入(DI)
- IoC(Inversion of Control,反转控制)或DI(Dependency Injection,依赖注入)
- 控制反转(IOC)/依赖注入(DI)理解
- 深入理解DIP、IoC、DI以及IoC容器
- 用PHP实现简单的控制反转(IOC) 依赖注入(DI),用JSON配置文件
- Spring学习(三)IOC控制反转与DI依赖注入
- 结合配置文件、反射完善控制反转(IoC)、依赖注入(DI) 推荐