在自己設計的過程中,有時很困惑于這些類圖。記下來以便后面回顧。

                 類(class) :類圖分三層。第一層顯示類的名稱,若是抽象類,則用斜體顯示。第二層顯示類屬性,通常為字段或屬性。第三層顯示類的操作,即方法或行為。屬性和方法前的符號:"+"表示public,"-"表示private,“#” 表示protected。

                 接口(interface):矩形表示法及棒棒糖表示法。矩形表示法:頂端有《interface》,第一行接口名稱,第二行接口方法。棒棒糖表示法:圓圈旁邊為接口名稱,方法在類中表示。

                 繼承(extends):空心三角形+實線。如圖中鳥繼承于動物,鳥具有動物的基本屬性,并且有身為鳥類特殊的屬性及方法。

                 實現(xiàn)(implements):空心三角形+虛線。如圖中的大雁實現(xiàn)了飛翔的接口,大雁也就具有了飛的方法。

                 關聯(lián)(association):實線箭頭。如圖中企鵝和氣候的關系,企鵝需要知道氣候的變化,因此在它的內(nèi)部中添加了氣候的屬性,表示它知道了氣候的類。

                

          1public class Penguin extends Bird
          2{
          3 private Climate climate
          4}


                 聚合(aggregation):空心菱形+實線箭頭。聚合表示一種弱“擁有"關系,即A類可以包含B類,但B類不是A類中的一部分,如圖中的雁群和大雁的關系,雁群中有大雁,但大雁不是雁群的一部分。

          1public class WideGrooseAggregation
          2{
          3   private WideGroose[] arrayWideGroose
          4}

           
                組合(composition):實心菱形+實線箭頭。組合表示一種強“擁有"關系,體現(xiàn)了嚴格的部分和整體關系,部分和整體的生命周期一樣。如圖中,鳥和翅膀的關系。其中,連線兩端的"1"和"2",稱為基數(shù),表示這一端的類有幾個實例。如果一個類可以有無數(shù)個實例,則用"n"表示。關聯(lián)關系、聚合關系也可以有基數(shù)。

          1public class Bird
          2{
          3   private Wing wing;
          4   public Bird()
          5   {
          6     wing = new Wing();
          7   }

          8}


           

                 依賴(dependency):虛線箭頭。如圖中,動物、水和氧氣的關系。動物需要水和氧氣。


          1abstract class Animal
          2{
          3    public Metabolism(Oxygen oxygen, Water water);
          4}


           


          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導航:
           

          posts - 1, comments - 0, trackbacks - 0, articles - 0

          Copyright © Donald can save the Xmu

          主站蜘蛛池模板: 卢龙县| 黄陵县| 湖北省| 奉新县| 沈丘县| 夹江县| 建昌县| 天柱县| 肃宁县| 和平区| 庆安县| 光泽县| 嵊州市| 出国| 肇州县| 克什克腾旗| 泰和县| 三穗县| 鄱阳县| 固镇县| 镇坪县| 惠州市| 灵石县| 东莞市| 绍兴县| 页游| 大余县| 勐海县| 本溪市| 武冈市| 海原县| 巢湖市| 普安县| 苏尼特右旗| 衡阳市| 九龙坡区| 西和县| 皮山县| 嘉黎县| 府谷县| 喜德县|