加入收藏 | 设为首页 | 会员中心 | 我要投稿 安卓应用网 (https://www.0791zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 程序设计 > 正文

控制反转Ioc依赖注入DI

发布时间:2020-05-22 22:36:25 所属栏目:程序设计 来源:互联网
导读:Ioc = inversion of control containers DI = dependency injection pattern 依赖:如果A依赖于B 则B对A有控制权。 例如 public class A {...} interface A {}; public class Aimpli1 implements a{}; public clsas B { ...

Ioc = inversion of control containers
DI = dependency injection pattern

依赖:如果A依赖于B 则B对A有控制权。

例如
public class A {...}
interface A {};
public class Aimpli1 implements a{};
public clsas B
{
...
A a = new Aimpl1();
...
}

B类有一个A类 B是依赖于A的,如果A变化 B就会跟着变化,也就是A对B有控制权。

例如:我们现在Aimpli1是用文件进行数据存储,我们需要一个是用数据库进行存储的实现Aimpli2.如果上面的方法就需要修改
源代码了,如下
public clsas B
{
...
A a = new Aimpl2();
...
}
这样系统的偶合性大大增加了。

也就是B的实现依赖于A的实现。 控制反转(invert of control) 就是将这种依赖发生转移,不再程序内部进行。 者往往回增加一个独立于A和B的装配器 例如jsf中的Backing Bean,可以在配置文件中进行配置,需要改变时不需要改动代码,修改配置文件就可以了。

(编辑:安卓应用网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读