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

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

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

    通過裝飾(decorator)模式詮釋Eclipse的插件擴展機制

    UML圖如下:

     

    抽象構件角色:

    /*
    *@author 我為J狂 建立日期 2007-4-21
    *
    */

    package net.blogjava.lzqdiy.decorator;

    public interface IDE
    {
        
    void getFunction();
    }

    具體構件角色:
    /*
    *@author 我為J狂 建立日期 2007-4-21
    *
    */

    package net.blogjava.lzqdiy.decorator;

    public class Eclipse implements IDE
    {

        
    public Eclipse()
        
    {
            
        }

        
    public void getFunction()
        
    {
             
        }


    }

    裝飾角色:
    /*
    *@author 我為J狂 建立日期 2007-4-21
    *
    */

    package net.blogjava.lzqdiy.decorator;

    public class PlugIn implements IDE
    {

        
    private IDE ide;
        
    public PlugIn(IDE ide)
        
    {
            
    super();
            
    this.ide=ide;
        }


        
    public void getFunction()
        
    {
            ide.getFunction();
        }


    }

    具體裝飾角色:

    /*
    *@author 我為J狂 建立日期 2007-4-21
    *
    */

    package net.blogjava.lzqdiy.decorator;

    public class WTP extends PlugIn
    {

        
    public WTP(IDE ide)
        
    {
            
    super(ide);
        }

        
    public void getFunction()
        
    {
            
    // TODO Auto-generated method stub
            System.out.println("具有了開發Web應用程序的功能!");
        }

    }

    /*
    *@author 我為J狂 建立日期 2007-4-21
    *
    */

    package net.blogjava.lzqdiy.decorator;

    public class VE extends PlugIn
    {
        
    public VE(IDE ide)
        
    {
            
    super(ide);
        }

        
    public void getFunction()
        
    {
            System.out.println(
    "具有了開發圖形用戶界面程序的功能!");
        }


    }

    客戶端代碼:
    /*
    *@author 我為J狂 建立日期 2007-4-21
    *
    */

    package net.blogjava.lzqdiy.decorator;

    public class Client
    {

        
    /**
         * 
    @param args
         
    */

        
    public static void main(String[] args)
        
    {
            IDE eclipse
    =new Eclipse();
            IDE eclipseWithWTP
    =new WTP(eclipse);//得到安裝了WTP插件的Eclipse
            eclipseWithWTP.getFunction();
            IDE eclipseWithWTPandVE
    =new VE(eclipseWithWTP);//得到安裝了WTP和VE插件的Eclipse
            eclipseWithWTPandVE.getFunction();
        }


    }



    posted on 2007-04-21 15:21 我為J狂 閱讀(1408) 評論(0)  編輯  收藏 所屬分類: 設計模式

    <2007年4月>
    25262728293031
    1234567
    891011121314
    15161718192021
    22232425262728
    293012345

    導航

    統計

    常用鏈接

    留言簿(11)

    隨筆分類(48)

    文章分類(29)

    常去逛逛

    搜索

    積分與排名

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 亚洲av无码电影网| 国产亚洲一区二区精品| 精品亚洲A∨无码一区二区三区| 国产免费高清69式视频在线观看| 午夜国产羞羞视频免费网站| 亚洲AV成人片无码网站| 夜夜爽免费888视频| 亚洲乱码av中文一区二区| 免费涩涩在线视频网| 国产成人+综合亚洲+天堂| 亚洲精品高清在线| 精品国产免费一区二区三区| 亚洲精品无码高潮喷水在线| 暖暖在线视频免费视频| 亚洲精品第一国产综合精品| 永久免费av无码不卡在线观看| 亚洲宅男精品一区在线观看| 在线免费观看色片| 免费看一级一级人妻片| 亚洲精品无码专区久久久| 少妇太爽了在线观看免费视频| 亚洲国产综合精品| 免费看片免费播放| 九九热久久免费视频| 亚洲成色999久久网站| 在线观看的免费网站| 美女羞羞视频免费网站| 久久亚洲国产欧洲精品一| 亚洲免费黄色网址| 337P日本欧洲亚洲大胆精品| 永久亚洲成a人片777777| 中国人xxxxx69免费视频| 精品亚洲福利一区二区| 亚洲韩国精品无码一区二区三区 | www国产亚洲精品久久久| 中文在线观看永久免费| 亚洲人成黄网在线观看| 亚洲高清成人一区二区三区| 午夜不卡久久精品无码免费| 亚洲国产日韩a在线播放| 亚洲AV永久纯肉无码精品动漫|