<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    夢幻之旅

    DEBUG - 天道酬勤

       :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
      671 隨筆 :: 6 文章 :: 256 評論 :: 0 Trackbacks
    代理模式
        為其它的對象提供一種代理,以控制對這個對象的訪問.
         Proxy代理模式是一種結構型設計模式,主要解決的問題是:在直接訪問對象時帶來的問題,比如說:要訪問的對象在遠程的機器上。在面向對象系統中,有些對象由于某些原因(比如對象創建開銷很大,或者某些操作需要安全控制,或者需要進程外的訪問),直接訪問會給使用者或者系統結構帶來很多麻煩,我們可以在訪問此對象時加上一個對此對象的訪問層。
    代理模式的組成部份:
        1.抽象主題 是一個接口.
        2.具體主題  要實現抽象主題接口
        3.代理主題 要實現抽象主題接口,含有一個主題接口聲明的變量
    各組成部份之間的關系:

    例子:
    1.接口
    package proxy;

    /**
     * <ul>
     * <li>Title:[SellWine]</li>
     * <li>Description: [賣酒接口]</li>
     * <li>Copyright 2009 Upengs Co., Ltd.</li>
     * <li>All right reserved.</li>
     * <li>Created by [Huyvanpull] [2011-8-2]</li>
     * <li>Midified by [modifier] [modified time]</li>
     * </ul>
     * 
    @version 1.0  
     
    */

    public interface SellWine
    {   
        
    public void sell();
    }


    2.實現類
    package proxy;

    /**
     * <ul>
     * <li>Title:[WineFactory]</li>
     * <li>Description: [type of functional description]</li>
     * <li>Copyright 2009 Upengs Co., Ltd.</li>
     * <li>All right reserved.</li>
     * <li>Created by [Huyvanpull] [2011-8-2]</li>
     * <li>Midified by [modifier] [modified time]</li>
     * </ul>
     * 
    @version 1.0  
     
    */

    public class WineFactory implements SellWine
    {

        
    /* (non-Javadoc)
         * @see proxy.SellWine#sell()
         
    */

        
    public void sell()
        
    {
            System.out.println(
    "wineFactory賣酒.");
        }
       

    }


    3.代理類
    package proxy;

    public class WineFactoryProxy implements SellWine
    {
        
    private WineFactory wineFactory;
        
        
    public WineFactoryProxy()
        
    {
            wineFactory 
    = new WineFactory();
        }

        
    /* (non-Javadoc)
         * @see proxy.SellWine#sell()
         
    */

        
    public void sell()
        
    {
            wineFactory.sell();
        }
       

    }


    4.測試類
    package proxy;

    public class Test
    {   
        
    public static void main(String[] args)
        
    {
            WineFactoryProxy wineFactoryProxy 
    = new WineFactoryProxy();
            wineFactoryProxy.sell();
        }

    }


    優點:代理模式可以屏比用戶真正請求的對象,使用戶程序和真正對象之間解耦.
    posted on 2011-08-02 15:36 HUIKK 閱讀(266) 評論(0)  編輯  收藏 所屬分類: Design Patterns
    主站蜘蛛池模板: 亚洲成在人线aⅴ免费毛片| 免费无码又爽又刺激高潮软件| 久久亚洲国产精品成人AV秋霞| 亚洲妇女熟BBW| 免费无遮挡无码视频网站| 免费国产在线精品一区| 亚洲AV无码久久寂寞少妇| 日韩免费a级毛片无码a∨| 免费很黄无遮挡的视频毛片| 久久综合图区亚洲综合图区| 精品免费国产一区二区| 久草免费福利视频| 亚洲精品国产摄像头| 亚洲成AV人片在线观看无码| 韩国18福利视频免费观看| 久久精品一区二区免费看| 亚洲国产成人AV在线播放| 人人狠狠综合久久亚洲88| 国产极品粉嫩泬免费观看| 免费国产成人午夜在线观看| 亚洲国产精品无码久久| 亚洲AV日韩精品久久久久久久| 最近免费中文字幕中文高清| 亚洲色大成网站www久久九| 国产亚洲一区二区三区在线| 国产大片线上免费看| 国产午夜免费高清久久影院| 亚洲AV女人18毛片水真多| 亚洲第一福利视频| 亚洲福利视频一区二区| 无码人妻一区二区三区免费| 免费国产污网站在线观看| 亚洲成熟丰满熟妇高潮XXXXX| 免费看一级做a爰片久久| 成年人视频免费在线观看| 无码日韩人妻AV一区免费l| 亚洲一区电影在线观看| 久久香蕉国产线看观看亚洲片| 曰批全过程免费视频网址| 羞羞视频免费网站日本| 亚洲av中文无码字幕色不卡|