IOC我的理解

IOC

1.  Ioc 是什么?

看过不少的博客,都在解释着一个名词,控制反转,可是什么是控制反转,又有解释为控制的权利交给了容器处理,无论怎么解释,总以为仍是不清不楚的,比较晦涩难懂.而IOC确实包含了不少的东西,涉及到了代码解耦,设计模式,代码优化等问题.spring

Ioc和new 出一个新的对象有什么区别呢??这个一直我不是很理解,看了很久的书,对此有了模糊的理解,ioc是new对象的升华,ioc建立的实例是运行时期才能够肯定是哪一个对象,这样就增长了编程的灵活性.编程

2.  实例对比

在spring3.x实战中获得的例子.设计模式

1.       以前的写法优化

    Public Class MoAttack{this

        LiuDeHua ldh=new LiuDeHua();
    }spa

         直接写出演员对象,可是这样耦合过紧,要是临时更换演员呢??设计

2.       改进以后对象

    Public Class MoAttack{接口

        GeLi geli=new LiuDeHua();ci

        geli.reponseAsk(“”);

    }

         经过接口,这样仍是具备很深的耦合.咱们的目的是,具体的演员和剧本无关,我能够随时随地的换演员.导演最大,

3.       控制反转

1.       控制

2.       反转

public class MoAttack implements ActorArrangable {

  private GeLi geli;

 

  public void injectGeli(GeLi geli) {

     this.geli = geli;   

}

 

  public void cityGateAsk() {

     geli.responseAsk("墨者革离");

  }

}

相关文章
相关标签/搜索