IOC的含义
new的方式创建对象,是主动去找对象。对我的资源独立就变的很难,因为这有明显的依赖关系
第二种方式创建对象。app断开了和资源的联系,。而是去找工厂要一个资源。由工厂负责和资源去的联系,并把想要的对象再转到应用系统
AccountServiceImpl使用上面这行代码也是完全可以找到自己想要的dao的
但是它自己完全找到这个dao的权利放弃了。把这个权利交给了BenFactory。BenFactory再通过一个固定的名称之后。给我们找到我想要的bean对象。这个对象是不是你能用的呢?对于这个类来说它已经无法得知了。
因为工厂能得到哪个对象是根据这里配置的全限定类名来决定的。这个类无法自己独立的控制
而上面这个类有自己独立的控制权,想要谁就要谁
这种控制权发生的转移。我们就叫做控制反转。
降低我们程序之间的依赖关系。削减计算机的耦合