策略模式

接口

package com.stary;

public interface IStary {
 public void todo();
 
}

执行器

package com.stary;

public class Context {
 //持有现在接口的对象
 public IStary istary;
 
 public Context(IStary istary){
  this.istary = istary;
 }

 public void todo(){
  istary.todo();
 }
}

//实现类

package com.stary;

public class First implements IStary {

 @Override
 public void todo() {
  System.out.println("这个是策略模式");

 }

}

实现类

public class Second implements IStary {

 @Override
 public void todo() {
  System.out.println("这个策略模式");

 }

}

//测试类

public class Test {

 public static void main(String[] args) { 
  First first = new First(); 
  /**
   * Context 这个相当一个执行器  内部有个 持有这个一个接口
   * 有两个实现这个接口的对象;
   * 根据传入的对象不同 执行不同的策略
   * */  
  Context context = new Context(first);
  context.todo();
 }

}

 

posted @ 2016-11-20 14:27  随风而逝,只是飘零  阅读(216)  评论(0)    收藏  举报