概述UML类图
UML 类图是系统分析和设计阶段的重要产物,是系统编码和测试的重要模型,它用来描述系统中类的内部结构、类与类之间的关系,可以简化人们对系统的理解 。
此处主要对类与类之间的关联关系做介绍。类与类之间的关系包括: 泛化(Generalization)、关联(Association)、聚合(Aggregation)、组合(Composition)、依赖(Dependence) 、实现(Realization)
泛化关系(Generalization),也叫继承关系。
1.类图
属性和方法前的符号意义:
- -:private
- +:public
- #:protected
- *:package
2.代码
public class Animal {
}
public class Dog extends Animal{
}
关联(Association)
1.类图
2.代码
//单一关联
public class Dog {
private List<Home> home;
}
//双向关联
public class Tree {
private Bird bird;
}
public class Bird {
private Tree tree;
}
//自关联
public class Dolls {
private Dolls dolls;
}
聚合(Aggregation)
1.类图
聚合关系是一种特殊的关联关系,聚合关系强调的是整体和部分的关系,其中部分可以脱离整体而存在。
2.代码
//鸟和树都是可独立存在的对象
public class Bird {
private Tree tree;
}
组合(Composition)
1.类图
组合关系也是一种特殊的关联关系,它与聚合关系很像,也是强调整体与部分的关系,不同的是部分无法脱离整体存在。
2.代码
//牙齿是狗的一部分
public class Dog {
private Teeth teeth = new Teeth();
}
依赖(Dependence)
1.类图
依赖关系是一种使用关系,它是对象之间 耦合度最小 的一种关联方式,它是一种临时性的关联,在代码中某个类通过局部变量、方法的参数、或者静态方法的调用来使用另外一个类的某些方法来完成一些功能
2.代码
public class Water {
public Boolean drink() {
return null;
}
}
public class Bird {
public Boolean alive(Water water) {
return null;
}
}
实现(Realization)
1.类图
2.代码
public interface Postman {
Boolean receive(Object obj);
Boolean send(Object obj);
}
public class LogisticsSystem implements Postman {
public Boolean receive(Object obj) {
return null;
}
public Boolean send(Object obj) {
return null;
}
}
public class Email implements Postman {
public Boolean receive(Object obj) {
return null;
}
public Boolean send(Object obj) {
return null;
}
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南