麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 編程設計 > 正文

uml類圖常見關系

2020-07-14 13:25:20
字體:
來源:轉載
供稿:網友

1.泛化關系

泛化關系是繼承或實現的關系,是is-a關系,具體表現為類與類的繼承,接口與接口的繼承,類對接口的實現關系。

2.依賴關系

依賴關系表示為一個類使用另一個類,這種使用關系是具有偶然性的、臨時性的、非常弱的,一個類的變化會影響到另一個類,是use a關系,如果類A依賴于類B,那么類B可以是類A的局部變量,或類A方法的參數,或靜態方法的調用。

3.關聯關系

關聯關系是一種強依賴關系,這種關系不存在依賴關系的偶然性,關系也不是臨時的,是長期的,穩定的。雙方的關系是平等的,可以單向關聯也可以是雙向關聯。假如類A關聯了類B,則類B是類A的全局變量(注意是全局變量,再看看上面的依賴關系),大多數關聯都是單向關聯,這比較容易維護,關于關聯,在生活中我們常會說,類A持有類B的引用。

4.聚合關系

聚合關系是特殊的關聯關系,是一種強的關聯關系,他體現的是整體與部分關系,即has-a的關系,但是整體和部分是可以分離的,注意,是可以分離的。普通關聯關系的兩個類處于同一層次上,是平級的,而聚合關系的兩個類處于不同的層次,一個是整體,一個是部分。同時,是一種弱的“擁有”關系。體現的是A對象可以包含B對象,但B對象不是A對象的組成部分。具體表現為,如果A由B聚合成,表現為A包含有B的全局對象,但是B對象可以不在A創建的時刻創建,這句話非常有意義,它在代碼中通常體現成依賴注入的setter方法,即A對象可以隨時創建B對象,再想想這不就體現了整體和部分是可以分離了嗎?創建整體的時候可以不創建部分。

5.組合關系

組合關系也是特殊的關聯關系,它體現一種contains a(擁有)關系,這種關系是比聚合還要強,也稱為強聚合。體現了嚴格的整體和部分關系,兩者是不可分割的,它們的生命周期是一致的。如果A由B組成,那么A就包含B的全局變量,并在創建A的同時創建B,在代碼上我們通常是使用構造函數進行實現,也是依賴注入中構造函數的實現。

最后,我們來總結一下,泛化就不用多少了,大家都懂的,就是繼承和實現接口,重點說下其它的吧,依賴,ClassB體現為ClassA的局部變量,我想用就用,用了就有關系,不用就沒關系;關聯,ClassB體現為ClassA的全局變量,不管你用不用,反正你知道我的存在了,持有了我的引用。聚合,是特殊的關聯關系,用了就加強了關系,不用還是我只知道你的存在。聚合可以方便的持有多個類的引用,如使用List<>,所以當你發現有List<>等集合是可以使用聚合來表示,比如觀察者模式的結構。組合,體現最強的關系,比如人出身了,必定也有頭部吧,不然我真無法想象這個世界了。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 日本黄色免费播放 | 亚洲天堂中文字幕在线观看 | 久久9久久 | 操碰 | 欧美乱码精品一区 | 免费一区二区三区 | 免费在线观看中文字幕 | 蝌蚪久久窝 | 欧美精品电影一区 | xnxx 美女19 | 激情视频导航 | 综合精品一区 | 国产亚洲高清在线精品不卡 | 九九热九九爱 | 国产日韩精品欧美一区视频 | 中国a毛片 | 欧美一级性 | 亚洲精品在线观看免费 | 狠狠干最新网址 | 5xsq在线视频 | 久草最新网址 | 青久草视频 | xx53xx| 爱草在线 | 久久福利剧场 | av国产免费 | 欧美成人免费 | 精品在线观看一区二区三区 | 久久久免费观看完整版 | 成人观看网站 | videos高潮| 欧美xxxwww| 一级免费黄色 | 亚洲一二三久久 | 中文字幕精品一区久久久久 | 中国的免费的视频 | 国产一级爱c视频 | 一级毛片在线观看视频 | 亚洲影院在线 | 黄网站免费入口 | 特级黄毛片|