一、何为控制反转
控制反转(IOC)把创建对象的权利交给框架,是框架的重要特征,并非面向对象编程的专用术语。它包括依赖注入(Dl)和依赖查找(DL)
举例如:
private IAccountDao accountDao = new AccountDaoImpl();
private IAccountDao accountDao = (IAccountDao)BeanFactory.getBean("accountDaoImpl");
分析
1.传统构造对象模式
该模式下,创建指定类型的对象的权利完全由自己控制,new的什么就是什么
2.工厂模式
该模式下,创建指定对象的权利不由自己完全控制,而把权利交给了工厂,自身并没有完全独立的权利,即控制权发生转接。这种模式即位控制反转
二、控制反转(IOC)的作用
降低程序之间的依赖关系,即解耦