美文网首页
控制反转

控制反转

作者: conowen | 来源:发表于2021-04-09 18:00 被阅读0次

    定义

    控制反转(Inversion of Control,缩写为IoC),是面向对象编程中的一种设计原则,可以用来减低计算机代码之间的耦合度。

    传统意义上,Class A中用到了Class B的对象b,一般情况下,需要在A的代码中显式的new一个B的对象。而控制反转的意思就是对依赖对象(如Class B)创建,从程序代码本身显式创建转移到了外部容器,由外部容器来负责创建。

    实现方式

    实现控制反转主要有两种方式:

    • 依赖注入(Dependency Injection)

    被动的接收对象,在类A的实例创建过程中即创建了依赖的B对象,通过类型或名称来判断将不同的对象注入到不同的属性中。“注入”是指将“依赖”传递给调用方的过程。在“注入”之后,调用方才会调用该“依赖”。传递依赖给调用方,而不是让调用方直接获得依赖,这个是该设计的根本需求。

    • 依赖查找(Dependency Lookup)

    主动索取相应类型的对象,获得依赖对象的时间也可以在代码中自由控制。

    相关文章

      网友评论

          本文标题:控制反转

          本文链接:https://www.haomeiwen.com/subject/bncwkltx.html