工廠模式

pkc000pkc 12年前發布 | 2K 次閱讀 Office 15 分布式監控

    在學習設計模式,設計模式還是很重要滴(廢話),寫一些設計模式的實現方式。。。
    工廠模式,其實工廠模式很多時候都是和單態一起使用的,但是為了簡單起見,就只使用工廠模式來架一下程序的結構。
   
    寫一個接口,或是抽象類,讓實現功能的類都從接口中繼承,然后再用容器將要用的功能的子類裝起來,然后遍歷容器,依次調用這些類的方法,這是工廠的一個簡單的思想。
   模擬一個消息處理的工廠。

//定義接口
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;
}

}</pre>定義遍歷的方法

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");   
    }
}

上面的方法都是空實現,在方法體中加入處理邏輯的代碼就可以實現消息的處理了

 本文由用戶 pkc000pkc 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!