zoukankan      html  css  js  c++  java
  • 生成器模式(builder)

    还是那个说法,我要吃东西就去相应的食堂窗口,但我不能吃食堂窗口,窗口里的东西也许不少,我要跟师傅说,要这个,这个,还有这个。

    举例:我已经建立了 xml解析器的工厂,现在要返回解析器本身,就让工厂创建,返回给我。

    //XMLParserGetFactory.as
    //生成解析读入的xml的对象的工厂
    class XMLParserGetFactory implements AbstractFactory{
        var xmlParser;
        function XMLParserGetFactory(str:String){
            
    //如果要求留言板列表解析器,就生成一个
            if(str==” xmlParseGuestbookList”){
                xmlParser
    =new xmlParserGuestbookList();
            }
        }
        function createXmlParser(){
            
    //返回所要求的解析器
            return xmlParser;
        }
    }
     
    //AbstractXmlParser.as
    //抽象xml解析器
    Interface AbstractXmlParser{
    function ParseXml();
    }
    //xmlParserGuestBookList.as
    //留言板列表解析器
    Class xmlParserGuestBookList implements AbstractXmlParser{
        
    //把xml字符串里的内容解析到一堆数组里
        function ParseXml(xml:XML,arrayID:Array,arrayTitle:Array){
        
    //具体循环操作
        }
    }

    使用的时候:

    var xmlParser=new XMLParserGetFactory(xmlParseGuestbookList)
    xmlParser= XMLParserGetFactory. createXmlParser(xml,arrayID,arrayTitle);
  • 相关阅读:
    例20:希尔排序
    例19:直接插入排序
    例14:计算某日是该年的第几天
    为自己
    hdoj--1027--Ignatius and the Princess II(dfs)
    UESTC--758--P酱的冒险旅途(模拟)
    nyoj--990--蚂蚁感冒(模拟)(思维题)
    历届试题 邮局(dfs+剪枝)
    历届试题 数字游戏
    历届试题 回文数字
  • 原文地址:https://www.cnblogs.com/sevenyuan/p/1608641.html
Copyright © 2011-2022 走看看