spring学习——控制反转与依赖注入

       控制反转(Inversion of Control,英文缩写为IoC)是一个重要的面向对象编程的法则来削减计算机程序的耦合问题,也是轻量级的Spring框架的核心。 控制反转一般分为两种类型,依赖注入(Dependency Injection,简称DI)和依赖查找(Dependency Lookup)。依赖注入应用比较广泛。

 

本文主要通过一个例子来学习依赖注入。

 

1,定义一个接口:

public interface Instrument{
      void paly();
}

 2,创建一个类来实现该接口:

 

public class Piano implements Instrument { 
     public void play(){
       System.out.println("PLINK PLINK PLINK");
    }
}

3,创建一个使用者:

public class User{
    Instrument instrument;
    
    public Instrument getInstrument{
         return instrument;
    }
    //setter注入:
    public Instrument setInstrument (Instrument instrument ){
         this. instrument  = instrument ;
    }

    public void function(){
         instrument.play();
    }
}

 4,创建一个外部“容器”:

public class Container{
     public static User getBean(){
           Instrument i = new Piano();
           User u = new User();
           u.setInstrument(i);
           return u;
     }
}

5,建一个测试类:

public class Test{
       public static void main(String[] args){
           User u= Container.getBean();
           u.function();
    }
}

 

你可能感兴趣的:(spring)