IoC与DI
IoC和DI是Spring的两个核心概念,很多人都把它们视为相同的东西,但事实并非如此。
IoC(Inversion of Control):控制反转。
DI(Dependency Injection):依赖注入。
为了方便理解,先给出结论:
控制反转是目的,依赖注入是实现控制反转的手段。
控制反转是一种面向对象的思想,它是一种宽泛的概念,只要一个类将对它内部状态的控制权交由其他机制去完成即为『控制反转』。控制反转是为了降低类与类之间的耦合度。
而Spring采用依赖注入这一具体的手段来达到控制反转的目的。
依赖注入详解
一个类内部往往有很多成员变量,如:
class A {
private Person chaimm;
}
上述代码在面向对象中可以描述为:
- A类和Person类之间存在依赖关系;
- A依赖于Person;
- A为依赖类;
- Perosn为被依赖类;
通常情况下&#