好,客套話不說,我們進入正題。
以下是我用visio2007畫的乙個uml圖,我就利用這個圖講解uml的基本標記。
首先大家看動物類,該類為抽象類,在uml中抽象類的類名用斜體表示(類圖第一行寫類名)。該類擁有「有生命」這個屬性或者說是字段(在類圖的第二行用來寫屬性或字段),該類擁有「新陳代謝」和「繁殖」兩個方法(類圖第三行用於寫方法)。根據常識動物要想新陳代謝就需要氧氣和水,因此氧氣和水與動物類呈依賴關係,依賴關係用虛線加箭頭表示,箭頭指向被依賴的類。用**表示如下:
class abstract animal
}接著大家看鳥這個類,該類繼承於動物類,繼承用實線加空心三角形表示,空心三角指向基類,**實現如下:
class bird:animal
在鳥這個類的右邊是乙個翅膀類,該類與鳥的關係是組合關係,組合關係是乙個強型別關係,類與類之間的耦合度比較高,用乙個實心的平行四邊形加實線加箭頭表示,實心平行四邊形指向組合成後的整體,而箭頭則指向部分(翅膀是鳥的一部分)。而實線下的「1」和「2」表示乙隻鳥有兩個翅膀。這種關係寫成**如下:
class bird:animal
}由**可以看出在組合關係中兩個類的生命週期是相同的,也就是說兩個類同生共死。而且表示部分那個類要在表示整體那個類的建構函式中被例項化。
接著大家在來看看聚合關係(注意與組合關係的區別),想上邊的例子中的大雁和雁群就是聚合關係。大雁由雁群聚集而成,但是大雁和雁群的關係並不像翅膀和鳥的關係那麼牢固,大雁是隨時可以離開雁群的,而鳥可不能輕易丟了翅膀。因此,相對於組合而言聚合的耦合度會小一些(即組合是表示一種強的擁有關係,而聚合是表示一種弱的擁有關係)。聚合關係用**表示如下:
class widegoose:bird//大雁類
class widegoosegroup
然後,大家看看企鵝這個類。從所周知企鵝是一種不會飛的鳥他的生活與氣候有很大關係,因此企鵝類與氣候類是需要有關聯的,**如下:
class penguin:bird
最後,和大家講講介面的表示法,在uml中介面有兩者表示法,一種稱做棒棒糖表示發;一種就是正規的虛線加上空心三角形,並且三角形指向介面。現在,我們分別來說這兩者表示法。第一我們先來看看唐老鴨他繼承於鴨子類,唐老鴨會講人話,而講人話就是乙個介面他用類似棒棒糖的符號表示,圓圈處寫上介面名。而大雁類有飛翔這個介面,飛翔這個介面表示法是第一行有
class widegoose:iflying
inte***ce iflying
class tangduck:duck,ilanguage
inte***ce ilanguage
ok!這就是我要說的全部,希望對大家有所幫助!
UML快速入門
uml 好,客套話不說,我們進入正題。以下是我用visio2007畫的乙個uml圖,我就利用這個圖講解uml的基本標記。首先大家看動物類,該類為抽象類,在uml中抽象類的類名用斜體表示 類圖第一行寫類名 該類擁有 有生命 這個屬性或者說是字段 在類圖的第二行用來寫屬性或字段 該類擁有 新陳代謝 和 ...
快速入門UML
什麼是類圖 uml類圖是用來描述乙個系統的靜態結構。它既可以用於一般概念建模也可以用於細節建模。類包含了資料和行為,是物件導向的重要組成部分,它是具有相同屬性 操作 關係的物件集合的總稱。uml類圖也可以用於資料建模。它可以用來描述應用程式內部或和其他使用者之間的物件和資訊結構。在uml中問題域終要...
關於UML的快速入門
詳細參考 或參考 uml即unified model language,是一種建模語言,也是標準建模語言。常見的有以下幾種關係 泛化 繼承 繼承父類 generalization 帶空心三角形的直線表示 實現 實現介面 realization 帶空心三角形的虛線表示 依賴 類與類之間最弱的關係,依賴...