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

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

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

    常用鏈接

    統計

    最新評論

    (轉)UML中類圖實例

    接口:空心圓+直線(唐老鴨類實現了‘講人話’);
    依賴:虛線+箭頭(動物和空氣的關系);
    關聯:實線+箭頭(企鵝需要知道氣候才遷移);
    聚合:空心四邊形+實線+箭頭(雁群和大雁的關系);
    合成/組合:實心四邊形+實線+箭頭(鳥和翅膀的關系);
    泛化/
    繼承:空心三角形+實線(動物和鳥的繼承關系);
    實現:空心三角形+虛線(實現大雁飛翔的接口);
    UML類圖  
    解釋
    UML類圖:
    1.       首先看“動物”矩形框,它代表一個類。該類圖分為三層,第一層顯示類的名稱,如果是抽象類就要用斜體顯示。第二層是類的特性,通常就是字段和屬性。第三層是類的操作,通常是方法和行為。
       注意前面的符號,‘+’表示public, ‘ 表示private, ‘#’表示protected.   
                                               
    2.       飛翔矩形框表示一個接口圖,它與類圖的區別主要是頂端有《interface》顯示,第一行是接口名稱,第二行是接口方法。接口還有另一種表示方法,俗稱棒棒糖表示法,就是唐老鴨類實現了“講人話”的接口。
                  
    interface IFly                              interface Ilanguage                              
    {                                              {
       
    void Fly();                                    void Speak();
    }                                             }

    3.       動物,鳥,鴨,唐老鴨他們之間都是繼承的關系,繼承關系用空心三角形+實現來表示   
                     

    4.“大雁”實現了“飛翔”接口。實現接口用空心三角形+虛線來表示。(注:下面的圖中應為空心三角形

    class Bird:Animal                      class WideGoose:IFly
    {                                        {
       
    //繼承動物類                                 //實現飛翔接口
    }                                        }

    5.       企鵝與氣候有很大的關系,企鵝需要“知道”氣候的變化,需要“了解”氣候規律。當一個類“知道”另一個類時,可以用關聯(association)關系。關聯關系用實線箭頭來表示  
         
    class Penguin :Bird
    {
       
    private Climate climate;//在企鵝Penguin中,引用到氣候Climate對象
    }

    6.       “大雁”和“雁群”這兩個類。大雁是群居動物,每只大雁都屬于一個雁群,一個雁群可以有多只大雁。所以它們之間就滿足聚合(Aggregation)關系。聚合表示一種弱的“擁有”關系,體現的是A對象可以包含B對象,但B對象不是A對象的一部分。聚合關系用空心的菱形+ 實線箭頭表示
        

    class WideGooseAggregate
    {
       
    private WideGoose[] arrayWideGoose;
       
    //在雁群WideGooseAggregate類中,有大雁數組對象arrayWideGoose
    }

    7.       “鳥”和“翅膀”這兩個類。鳥和翅膀似整體和部分的關系,并且翅膀和鳥的生命周期是相同的,在這里鳥和其翅膀就是合成關系。合成(composition)是一種強的“擁有”關系,體現了嚴格的部分和整體的關系,部分和整體的生命周期一樣合成關系用實心的的菱形+實線箭頭來表示。另外,合成關系的連線兩端還有一個數字“1”和數字“2”,,這被稱為基數。表明這一端的類可以有幾個實例,很顯然,一個鳥應該有兩支翅膀。如果一個類可能有無數個實例,則就用“n”來表示。關聯關系,聚合關系也可以有基數的。
    class Bird 
    {
      
    private Wing wing;
      
    public Bird()
       {
          wing
    =new Wing();
        
    //在鳥Bird類中,初始化時,實例化翅膀Wing,它們之間同時生成
       }
    }

    8.       “動物”、“氧氣”與“水”之間。動物有幾大特征,比如有新陳代謝,能繁殖。而動物要有生命,需要氧氣,水以及食物等。也就是說動物依賴于氧氣和水。它們之間是依賴關系(Dependency),用虛線箭頭來表示

    abstract class Animal
    {
       
    public bolism(Oxygen oxygen,Water water)
        {
        } 
    }

    posted on 2011-02-12 13:02 九寶 閱讀(355) 評論(0)  編輯  收藏 所屬分類: Java Study(JavaThinking4)

    主站蜘蛛池模板: 免费无码VA一区二区三区| 一区二区三区免费视频网站| 91香蕉国产线在线观看免费| 国产精品久久久亚洲| 色爽黄1000部免费软件下载| 免费va在线观看| 一区二区视频在线免费观看| 亚洲国产高清精品线久久| 四虎精品免费永久免费视频| 亚洲第一视频在线观看免费| 免费在线人人电影网| 亚洲s码欧洲m码吹潮| 超pen个人视频国产免费观看| 亚洲欧美自偷自拍另类视| 久久国产精品免费一区二区三区 | 亚洲成av人片在www鸭子| 免费看少妇作爱视频| 日本一区二区三区免费高清在线| 国产免费久久精品| 国产精品hd免费观看| 精品亚洲综合久久中文字幕| 色欲色香天天天综合网站免费| 亚洲国产综合精品| 夜夜嘿视频免费看| 久草免费福利在线| 亚洲毛片一级带毛片基地| 在线免费观看一级片| 一区视频免费观看| 亚洲免费中文字幕| 亚洲另类激情专区小说图片| 青柠影视在线观看免费高清 | 国产真人无遮挡作爱免费视频 | 免费网站看av片| 亚洲成a人不卡在线观看| 日本免费福利视频| 久久精品成人免费网站| 亚洲专区中文字幕| 亚洲一区二区三区无码影院| 久久久久久一品道精品免费看 | www一区二区www免费| 久久av无码专区亚洲av桃花岛|