程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> 關於JAVA >> 比擬經常使用UML類圖幾種關系的小結

比擬經常使用UML類圖幾種關系的小結

編輯:關於JAVA

比擬經常使用UML類圖幾種關系的小結。本站提示廣大學習愛好者:(比擬經常使用UML類圖幾種關系的小結)文章只能為提供參考,不一定能成為您想要的結果。以下是比擬經常使用UML類圖幾種關系的小結正文


Unified Modeling Language (UML)又稱同一建模說話或尺度建模說話,是始於1997年一個OMG尺度,它是一個支撐模子化和軟件體系開辟的圖形化說話,為軟件開辟的一切階段供給模子化和可視化支撐,包含由需求剖析到規格,到結構和設置裝備擺設。 面向對象的剖析與設計(OOA&D,OOAD)辦法的成長在80年月末至90年月中湧現了一個熱潮,UML是這個熱潮的產品。它不只同一了Booch、Rumbaugh和Jacobson的表現辦法,並且對其作了進一步的成長,並終究同一為年夜眾所接收的尺度建模說話。

在UML類圖中,比擬經常使用的幾種關系有:泛化(Generalization), 完成(Realization), 聯系關系(Association), 聚合(Aggregation), 組合(Composition), 依附(Dependency),接上去,經由過程本篇文章給年夜家逐個做下詳解,詳細概況以下:

1.       泛化(Generalization)

【泛化關系】:是一種繼續關系, 表現普通與特別的關系, 它指定了子類若何特化父類的一切特點和行動. 例如:山君是植物的一種, 即有山君的特征也有植物的個性.

【箭頭指向】:帶三角箭頭的實線,箭頭指向父類

 

2. 完成(Realization)

【完成關系】:是一品種與接口的關系, 表現類是接口一切特點和行動的完成.

【箭頭指向】:帶三角箭頭的虛線,箭頭指向接口

3. 聯系關系(Association)

【聯系關系關系】:是一種具有的關系, 它使一個類曉得另外一個類的屬性和辦法;如:先生與先生,丈夫與老婆

聯系關系可所以雙向的,也能夠是單向的。雙向的聯系關系可以有兩個箭頭或許沒有箭頭,單向的聯系關系有一個箭頭。

【代碼表現】:成員變量

【箭頭及指向】:帶通俗箭頭的實心線,指向被具有者

上圖中,先生與先生是雙向聯系關系,先生有多邏輯學生,先生也能夠有多名先生。但先生與某課程間的關系為單向聯系關系,一位先生能夠要上多門課程,課程是個籠統的器械他不具有先生。

上圖為本身聯系關系:

 

4. 聚合(Aggregation)

【聚合關系】:是全體與部門的關系, 且部門可以分開全體而零丁存在. 如車和輪胎是全體和部門的關系, 輪胎分開車依然可以存在.

聚合關系是聯系關系關系的一種,是強的聯系關系關系;聯系關系和聚合在語法上沒法辨別,必需考核詳細的邏輯關系。

【代碼表現】:成員變量

【箭頭及指向】:帶空心菱形的實心線,菱形指向全體

5. 組合(Composition)

【組合關系】:是全體與部門的關系, 但部門不克不及分開全體而零丁存在. 如公司和部分是全體和部門的關系, 沒有公司就不存在部分.

       組合關系是聯系關系關系的一種,是比聚合關系還要強的關系,它請求通俗的聚合關系中代表全體的對象擔任代表部門的對象的性命周期

【代碼表現】:成員變量

【箭頭及指向】:帶實心菱形的實線,菱形指向全體

6. 依附(Dependency)

【依附關系】:是一種應用的關系,  即一個類的完成須要另外一個類的協助, 所以要盡可能不應用雙向的相互依附.

【代碼表示】:部分變量、辦法的參數或許對靜態辦法的挪用

【箭頭及指向】:帶箭頭的虛線,指向被應用者

 

各類關系的強弱次序:

泛化 = 完成 > 組合 > 聚合 > 聯系關系 > 依附

上面這張UML圖,比擬抽象地展現了各類類圖關系:


以上內容就是本文的全體論述,願望年夜家愛好。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved