UML 繪制

第一篇,原文鏈接http://blog.csdn.net/monkey_d_meng/article/details/6005764
UML類圖新手入門級介紹

   舉一個簡單的例子,來看這樣一副圖,其中就包括了UML類圖中的基本圖示法。
image

首先,看動物矩形框,它代表一個類(Class)。類圖分三層,第一層顯示類的名稱,如果是抽象類,則就用斜體顯示。第二層是類的特性,通常就是字段和屬性。第三層是類的操作,通常是方法或行為。前面的符號,+ 表示public,- 表示private,# 表示protected。

[圖片上傳失敗...(image-7507a7-1590742428197)]

右下角的飛翔,它表示一個接口圖,與類圖的區(qū)別主要是頂端的<>顯示。第一行是接口名稱,第二行是接口方法。接口還有另一種表示方法,俗稱棒棒糖表示法。唐老鴨是能講人話的鴨子,實現(xiàn)了講人話的接口。

[圖片上傳失敗...(image-ef1a68-1590742428197)]

接下來的是類與類,類與接口之間的關(guān)系了。首先注意動物、鳥、鴨、唐老鴨之間的關(guān)系符號。它們都是繼承的關(guān)系,繼承關(guān)系用空心三角形 + 實線來表示的。

[圖片上傳失敗...(image-fd284a-1590742428197)]

上述所列舉的幾種鳥中,大雁最能飛,讓它實現(xiàn)了飛翔接口。實現(xiàn)接口用空心三角形 + 虛線來表示。

[圖片上傳失敗...(image-b2189b-1590742428197)]

企鵝和氣候兩個類,企鵝是很特別的鳥,會游不會飛。更重要的是,它與氣候有很大的關(guān)聯(lián)。我們不去討論為什么北極沒有企鵝,為什么它們要每年長途跋涉??傊?,企鵝需要知道氣候的變化,需要了解氣候規(guī)律。當一個類知道另一個類時,可以用關(guān)聯(lián)(association)。關(guān)聯(lián)關(guān)系用實線箭頭來表示。

[圖片上傳失敗...(image-d93ed7-1590742428197)]

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

[圖片上傳失敗...(image-57ecd7-1590742428197)]

組合(Composition)是一種強的擁有關(guān)系,體現(xiàn)了嚴格的部分和整體的關(guān)系,部分和整體的生命周期一樣。在這里鳥和其翅膀就是組合關(guān)系,因為它們是部分和整體的關(guān)系,并且翅膀和鳥的生命周期是相同的。組合關(guān)系用實習的菱形 + 實線箭頭來表示。另外,你會注意到合成關(guān)系的連線兩端還有一個數(shù)字1和數(shù)字2,這被稱為基數(shù)。表明這一端的類可以有幾個實例,很顯然,一個鳥應該有兩只翅膀。如果一個類可能有無數(shù)個實例,則就是n來表示。關(guān)系關(guān)系、聚合關(guān)系也可以有基數(shù)的。[圖片上傳失敗...(image-dff0b-1590742428197)]

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

[圖片上傳失敗...(image-cbe11c-1590742428197)]

編程是一門技術(shù),更是一門藝術(shù),不能只滿足于寫完代碼后運行結(jié)果正確就完整,時常要考慮如何讓代碼更加簡練,更加容易維護,容易擴展和利用,只有這樣才可以真正得到提高。寫出優(yōu)雅的代碼真的是一種很爽的事情。UML類圖也不是一學就會的,需要有一個慢慢熟練的過程。所謂學無止境,其實這才是理解面向?qū)ο蟮拈_始呢。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內(nèi)容