IOC
控制反转
DI
依赖注入
1 | // 实现容器 |
依赖注入
依赖注入是通过类的构造函数、方法、或者直接写入的方式,将所依赖的组件传递给类的方式。
1 | class User |
1 | class User |
1 | class User |
只要不是由内部生产(比如初始化、构造函数中通过工厂方法、自行手动 new 的),而是由外部以参数或其他形式注入的,都属于 依赖注入(DI)
。
根据经验,一般通过构造函数注入的是强依赖关系的组件,setter 方式用来注入可选的依赖组件。
反转
所谓的反转,主要指由 主动依赖 到 被动依赖 。
1 | //主动依赖 |