Java中關聯和聚合之間的區別
關聯
從物件的角度看,關聯是指兩個相關物件之間的“擁有”關係。例如,一個員工擁有一個通訊地址。
class Employee {
String name;
Address communicationAddress;
}
class Address {
String address;
}聚合
從物件的角度看,聚合是指兩個相關物件之間的“擁有+”關係。例如,一個部門擁有多個員工。它指的是父類中存在子物件集合。例如
class Department {
String name;
List<Employee> employees;
}
class Employee {
String name;
}| 序號 | 要點 | 關聯 | 聚合 |
|---|---|---|---|
| 1 | 定義 | 關聯是指兩個使用對方的類之間的“擁有”關係。 | 聚合是指兩個類之間的“擁有+”關係,其中一個類包含其他類的物件集合。 |
| 2 | 靈活性 | 本質上是僵化的。 | 本質上是靈活的。 |
| 3 | 連結 | 需要連結來維持關聯。 | 物件之間並不一定有連結。 |
| 4 | 統一建模語言 | 線用於表示關聯。 | 菱形用於表示組裝類旁邊的聚合關係。 |
廣告
資料結構
網路
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
安卓
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP