天天看點

Uml 之 類圖,對象圖,包圖

Uml中的類圖是uml中最重要的圖之一,同時類圖也是最難畫的圖之一。

類圖

        類圖由類和類之間的關系組成,他可以表示程式設計中的一個類型,也可以表示現實世界中的一類事物,或一個概念。

       類是具有相同的屬性與方法的對象的集合,表示形式如圖所示:分為上中下三個部分,分别為類的名稱,屬性,方法。如圖所示:

Uml 之 類圖,對象圖,包圖

       類的名稱用來唯一的表示一個類,他能夠恰當的反應改類所代表的含義。他是必須的一個部分,而屬性 或者方法可以省略。或隻寫出其中一部分重要的屬性或方法。類的屬性與方法,分為三類,分别為公有的,私有的,受保護的,形式如圖所示:

Uml 之 類圖,對象圖,包圖

       類與類之間的關系式類圖的一個重要的組成部分,對于一個複雜的系統來說,能夠準确的抽象出類與類之間的關系式非常重要的,在類圖當中長用的關系有關聯關系,依賴關系,泛化關系,其中各種關系的說明請參見部落格:uml中的四種關系。類的屬性與方法的詳細說明。

類的屬性的文法如下:

可見性+  名稱:類型=預設值 {限制條件}如圖示:

Uml 之 類圖,對象圖,包圖

       可見性為私有的,名稱為name,類型為string,預設值為張三,限制條件:必須為真實的名字。

類的方法的文法如下:

可見性  名稱(參數表)  :傳回類型   {限制條件}

       可見性,名稱與屬性的相同,參數表表示該方法用到的參數,可以是一個,也可以是多個,傳回類型,表示該方法執行完以後傳回的類型,可以省略,限制條件,描述了方法的限制條件。如圖示:

Uml 之 類圖,對象圖,包圖

對象圖

       假如暫停一個正在運作的系統,就會返現系統在這個時刻包含一組對象,其中每個對象都處于一個具體的運作狀态,每個對象都與其他的對象有特定的關系,把這一時刻的系統狀态用圖來繪制,就形成了對象圖。

       對象圖是對包含在類圖中的各個類圖進行執行個體模組化,他顯示了在某一時間點上系統中的一組對象以及他們之間的關系,對象圖用于描述系統的靜态過程。

       對象圖與類圖具有相同的表示形式,唯一的差別在于對象的名字下面要加上一條下劃線。

包圖

       包是uml中的一種分組機制,一個“包圖”可以有任何一種的uml圖組成,包圖的表示如圖所示:

Uml 之 類圖,對象圖,包圖

       包分為兩種,一種是簡單包,隻有包名,還有一種是擴充包,不僅顯示了包名,而且還顯示了包中的一些内容。

       包中還可以擁有一些其他的元素,這些元素可以是類, 借口,構件,用例等,甚至還可以是其他的包,包與其元素是組成的關系,如果包被撤消了,那麼包中元素也就被撤消了。

       包與包之間的關系,主要有三種,泛化關系,依賴關系,細化關系,前兩種請參見部落格:uml中四種關系。

       細化關系,就是一個包包含另外一個包包含相同的元素,但卻帶有更多的細節。則稱兩個包為細化關系。細化關系用一條帶有空心三友箭頭的有向虛線表示,其中箭頭指向被細化的包。舉個例子,假設有兩個包都描述了一本書,其中包A裡是這本書的完整的章節描述。而包B則是這本書的完整章節的詳細内容。則稱包A和包B是細化關系。包A是被細化的包。

       在面向對象的分析設計當中,類圖,對象圖,與包圖,是非常重要的了解模型。一定要好好的了解。

繼續閱讀