1. 程式人生 > >java--------【物件之間的關係】

java--------【物件之間的關係】

            Java中的物件之間的關係有多種,在此之前我著實對這些只是有一點模糊的概念,知道有一次在面試中被面試官問道,才有了這些概念。那就今天借這個機會同大家分享下這個知識點,同時我也在去學習一遍。

            1.依賴關係:

                   這種關係是幾種關係中最弱的一種,是物件之間的一種臨時關係。例如在一個方法中的返回值供其他物件的呼叫,這樣就與其他的物件建立了一種臨時的關係,等呼叫該方法結束後,他們之間產生的關係也就結束了。

             2.關聯關係:

                     所謂的關聯關係,物件彼此之間的一種聯絡。例如淘寶中,使用者類與訂單類之間的關係,他們彼此之間存在一種互相關聯的關係。這種關係在使用中比較常見。

              3.聚合關係:

                      關於聚合的概念其實我不是很明白,我這裡就引用別人的一個解釋給大家解釋下:------>聚合:指的是整體與部分的關係。通常在定義一個整體類後,再去分析這個整體類的組成結構。從而找出一些組成類,該整體類和組成類之間就形成了聚合關係。例如一個航母編隊包括海空母艦、驅護艦艇、艦載飛機及核動力攻擊潛艇等。需求描述中“包含”、“組成”、“分為…部分”等詞常意味著聚合關係。

               4.組合關係:

                      組合關係其實在我們日常中比較常見的一種關係。我就把我在面試中面試官給我講的一個例項分享下:就是車輪與自行車的關係,當時我不是很清楚,我直接說是組成關係,然後那個面試官說你說的沒錯,但是專業一點的叫法是組合關係或者說是包含關係。所以大家記住,不要自己隨便改變一些術語的名字。是什麼就是什麼,這樣才顯的你很專業嗎。

               5.繼承關係:

                      繼承關係是確切的說是類與類之間的關係,但是物件又是類的例項,所以我們就姑且含糊點理解為物件之間的關係吧,其實這種關係不管是在我們程式設計還是生活中都是非常普遍的一種關係,例如父與子的關係,動物與狗的關係,汽車與大眾的關係等。

        上面只是偏向概念性的內容,但在真正使用的時候是比較複雜的,所以大家在理論的基礎上還需更多的時間。我也會在後期整理一些案例與大家共同學習。


                 每日勵志:The secret of their extraordinary success lay precisely in that insatiable curiosity,

                                   that irrepressible desire to know,no matter what the subject and no matter what the cost.

                          翻譯:他們取得非凡成就的祕密,是他們永遠不滿足的好奇心和難以遏制的求知慾,以及對任何事物的不計代價的付出。