當前位置:才華齋>計算機>java語言>

淺談Java類與類之間的關係

java語言 閱讀(2.35W)

類與類之間最常見的關係主要有三種:依賴(uses-a)、聚合(has-a)和繼承(is-a)。

淺談Java類與類之間的關係

下面以線上書店訂單系統為例,來詳細的講述這三種關係的概念。

線上書店訂單系統的主要功能是:註冊使用者可以登入到網上書店選購圖書,線上填寫訂單,並支付購書款。書店確認已經收到購書款時,按使用者留下的地址郵寄圖書。可以在這個系統中建立幾個類,有圖書(book)、賬戶(account)、訂單(order)、地址(address)等,如下圖所示:

依賴(uses-a)

依賴關係是類中最常見的`關係,例如訂單類(order)需要訪問使用者賬戶類(account),所以在訂單類中需要引用賬戶類,即訂單類依賴賬戶類,但圖書類不需要依賴賬戶類。

如果修改賬戶類,會影響到訂單類。依賴的實質就是類中的方法可以操作另一個類的例項。在實際程式設計中,建議儘量減少相互依賴類的數量。如下圖所示:

聚合(has-a)

因為訂單需要指明訂購什麼圖書,這就涉及到圖書類,即包含了圖書類。聚合與依賴關係的不同在於,訂單類可以不擁有所有賬戶類物件,但是必須擁有所有圖書類物件,因為圖書類的物件是訂單的主要目的,如下圖所示:

繼承

繼承就是一個類能呼叫另一個類的所有資料成員,並在當前類中不需要再重新定義,本章已經講得很明白了。