UML——六大關係整理java
一、定義工具
是一種面向對象的建模語言,它是運用統一的、標準化的標記和定義實現對軟件系統進行面向對象的描述和建模(百度百科)。spa
二、六種關係3d
這六種關係分別爲,繼承、實現、關聯、聚合、組合、依賴。對象
三、繼承(繼承是否能夠叫泛化?):blog
表示通常與特殊的關係,經過繼承,能夠把父類的特性或方法拿過來,而它自身能夠擴展其它的特性和方法等等。C#用繼承
冒號表示繼承,java用extend關鍵字表示繼承。接口
例如:貓是動物的一種,即有貓的特性也有動物的共性,Cat:Animal;Cat extend Animal。百度
UML表示以下:擴展
四、實現:
這是一種接口和類之間的關係,類實現接口中的特徵和行爲。例如:類C實現了接口Interface1
UML表示以下:
五、關聯:
一種強依賴關係,關聯就是某個對象會長期的持有另外一個對象的引用,而兩者的關聯每每也是相互的。關聯的兩個對象
彼此間沒有任何強制性的約束,
只要兩者贊成,能夠隨時解除關係或是進行關聯,它們在生命期問題上沒有任何約定。被關聯的對象還能夠再被別的對
象關聯,因此關聯是能夠共享的(51cto)。例如:ClassA2關聯着ClassB2,自身關聯ClassA5
UML表示以下:
六、依賴:
依賴指的是一個類依賴另外一個類的方法或屬性,例如:人要寫字,就必須藉助比的寫的功能。
依賴就是某個對象的功能依賴於另外的某個對象,而被依賴的對象只是做爲一種工具在使用,
而並不持有對它的引用(51CTO)。
UML表示以下:
七、聚合:
聚合是關聯的一種形式,表明兩個類之間的總體/局部關係。聚合暗示着總體在概念上處於比局
部更高的一個級別,而關聯暗示兩個類在概念上位於相同的級別。
UML關係圖中的聚合是強版本的關聯。它暗含着一種所屬關係以及生命期關係。被聚合的對象
還能夠再被別的對象關聯,因此被聚合對象是能夠共享的。雖然是共享的,聚合表明的是一種更親密的關係(51CTO)。
釋義:書和紙之間具備着一種強烈的所屬關係,書是能夠分享的,這正如紙和書裏的文字都對這本書有着一樣的強烈關聯。
UML表示以下:
八、組合:
UML關係圖中的組合是關係當中的最強版本,它直接要求包含對象對被包含對象的擁有以及包含對象
與被包含對象生命期的關係。被包含的對象還能夠再被別的對象關聯,
因此被包含對象是能夠共享的,然而毫不存在兩個包含對象對同一個被包含對象的共享(51CTO)。
UML表示以下: