请简述什么是spring的ioc和di_简单概括Spring中IOC和DI的概念

一、什么是IOC

Inversion of Control(控制反转),字面上的理解是说这个事物的控制权不在于你了,而在于其他人手上了。举个列子说明,比如超市收银员,以前收银员自己去通过输入商品编码、价格、结算、收钱等工作;现在呢,直接把这些工作交给了收银机去做,使用收银机扫码就可以了。

二、什么是DI

Dependency Injection(依赖注入),它是IOC的另外一种表达方式,也可以说是IOC具体实现。就好比说IOC是一台收银机,它只是一个大概的东西,而依赖注入呢,就相当于说我们在这台收银机里面输入了条码、商品名称、价格等内容,这样这个收银机才能干活。

三、为什么要使用IOC和DI

通过收银这个列子,收银员每结算一个商品就需要输入商品编码、价格、结算等工作,如果下一个结算有同样的商品,这样就又要进行输入一遍,从而做了很多重复的工作。因此使用收银机(IOC),只需在收银机里面提前输入相关的商品编码、价格等信息(DI),使用的时候直接通过扫码的方式就可以了, 这样就大大节省了收银工作,从而减少了繁琐的重复工作。

你可能感兴趣的:(请简述什么是spring的ioc和di_简单概括Spring中IOC和DI的概念)