a使用了b,這種使用關係具有偶然性、臨時性、非常弱。但是b
類的變化會影響到
a;比如某人要過河,需要借用一條船,此時人與船之間的關係就是依賴;
在**中,比如乙個類的某個方法引用了另乙個類。
表示:虛線箭頭使用者------- >被使用
兩個類、或者類與介面之間語義級別的一種強依賴關係,比如我和我的朋友;這種關係比依賴更強、非偶然性、非臨時性的,一般是長期性的,而且雙方的關係一般是平等的、關聯可以是單向、雙向的;
表現在**層面,為被關聯類b以類屬性的形式出現在關聯類a中,也可能是關聯類a引用了乙個型別為被關聯類b的全域性變數;
實線箭頭,兩端帶數量,使用者——>被使用
aggregation
關聯的一種特例,體現的是整體與部分、擁有的關係,即has-a
的關係,此時整體與部分之間是可分離的,他們可以具有各自的生命週期,部分可以屬於多個整體物件,也可以為多個整體物件共享;
比如計算機與cpu、公司與員工的關係等;
空心菱形(整體)
+
實線箭頭(部分)
composition
組合也是關聯關係的一種特例,他體現的是一種contains-a
的關係,這種關係比聚合更強,也稱為強聚合;他同樣體現整體與部分間的關係,但此時整體與部分是不可分的,生命週期相同;比如你和你的大腦;
實心菱形(整體)+實線箭頭(部分)
generalization
通俗的來講,泛化指的是類與類之間的繼承關係和類與介面之間的實現關係
類之間的關係
類之間的關係 內容 網上關於此類的討論非常多,發現對於該問題的理解各有各的說法,而各個說法中又相去甚遠。通過瀏覽這些討論以及對 的參考,發表一下自己的看法.類間關係有很多種,在大的類別上可以分為兩種 縱向關係 橫向關係。縱向關係就是繼承關係,它的概念非常明確,也成為oo的三個重要特徵之一,這裡不過多...
類之間的關係
類之間的關係 1 種類 generalization 泛化 dependency 依賴關係 association 關聯關係 aggregation 聚合關係 composition 合成關係 2 其中aggregation 聚合關係 composition 合成關係 屬於association 關...
類之間的關係
類之間的關係 1 種類 generalization 泛化 dependency 依賴關係 association 關聯關係 aggregation 聚合關係 composition 合成關係 2 其中aggregation 聚合關係 composition 合成關係 屬於association 關...