1. 关联关系
1.1 单向关联
、
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
public class ClassA { private ClassB bVar; } public class ClassB { //... }
1.2 双向关联
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
public class ClassA { private ClassB bVar; } public class ClassB { private ClassA aVar; // ... }
1.3 自关联
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
public class ClassH { private ClassH hVar; }
2. 聚合、组合
2.1 聚合
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
public class Computer { private CPU cpu; //.... } class CPU { //... }
2.2 组合
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
public class Database { private ArrayList<Table> tableList; } class Table { }
3. 依赖
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
public class ClassX { public void funx(ClassY yObj){}; } class ClassY { }
4. 泛化(继承)
5. 实现