工厂模式

12年前
    在学习设计模式,设计模式还是很重要滴(废话),写一些设计模式的实现方式。。。
    工厂模式,其实工厂模式很多时候都是和单态一起使用的,但是为了简单起见,就只使用工厂模式来架一下程序的结构。
   
    写一个接口,或是抽象类,让实现功能的类都从接口中继承,然后再用容器将要用的功能的子类装起来,然后遍历容器,依次调用这些类的方法,这是工厂的一个简单的思想。
   模拟一个消息处理的工厂。
//定义接口  public interface MsgDeel {   public String deel(String str);  }
定义子类

public class NumDeel implements MsgDeel {     @Override   public String deel(String str) {    System.out.println("NumDeel");    return str;   }     }      public class SemicolonDeel implements MsgDeel {     @Override   public String deel(String str) {    System.out.println("Semicolon");    return str;   }    }
定义遍历的方法

public class MsgControl {   public String msgControl(List<MsgDeel> msglist,String str){      for(int i=0;i<msglist.size();i++){     MsgDeel md = msglist.get(i);     str = md.deel(str);    }    return str;   }  }
测试方法

public class MsgDeelServer {   public static void main(String[] args){    List<MsgDeel> msg = new ArrayList<MsgDeel>();    MsgDeel smsg = new SemicolonDeel();    MsgDeel fmsg = new FuckDeel();    msg.add(smsg);    msg.add(fmsg);    msg.add(smsg);    msg.add(fmsg);    msg.add(fmsg);    msg.add(smsg);     MsgControl msgc = new MsgControl();    msgc.msgControl(msg, "lala");    }  }

上面的方法都是空实现,在方法体中加入处理逻辑的代码就可以实现消息的处理了