UML类图

UML类图

就是定义了一些符号,来描述软件系统分析和设计过程的工具。

它描述了软件模型中各个元素之间的关系,比如类,接口,实现,泛化,依赖,组合,聚合等

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-jCWbpOq3-1629305325950)(C:\Users\1\AppData\Roaming\Typora\typora-user-images\image-20210816170934362.png)]

  1. 用于描述系统中的类***(对象)本身的组成和类(对象)***之间的各种静态关系。

  2. 类之间的关系:依赖、泛化(继承)、实现、关联、聚合与组合。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xJc534yc-1629305325952)(C:\Users\1\AppData\Roaming\Typora\typora-user-images\image-20210816172702396.png)]

1、依赖关系(Dependence)

小结:

  1. 类中用到了对方
  2. 如果是类的成员属性
  3. 如果是方法的返回类型
  4. 是方法接收的参数类型
  5. 方法中使用到
public class PersonServiceBean {
	private PersonDao personDao,//类
	public void save(Person person)}	
	public IDCard getIDCard(Integer personid)
	public void modify{
		Department department = new Department();
	}
	
	public class PersonDao
	public class IDCard
	public class Person
	public class Department

【箭头及指向】:带箭头的虚线,指向被使用者

img

2、泛化关系(generalization)

泛化关系实际上就是继承关系,他是依赖关系的特例

public abstract class DaoSupport{ 
	public void save(Object entity){
	}
	
	public void delete(Object id){
	}
}


public class PersonServiceBean extends Daosupport{
}

image-20210720155211473

【箭头指向】:带三角箭头的实线,箭头指向父类

img

3、实现关系(Implementation)

实现关系实际上就是 A 类实现 B 接口,他是依赖关系的特例

public interface PersonService { 
	public void delete(Interger id);
}

public class PersonServiceBean implements PersonService { 
	public void delete(Interger id){
	
	}
}

【箭头指向】:带三角箭头的虚线,箭头指向接口

img

4、关联关系(Association)

image-20210720155447051

【关联关系】:是一种拥有的关系,它使一个类知道另一个类的属性和方法;如:老师与学生,丈夫与妻子

关联可以是双向的,也可以是单向的。双向的关联可以有两个箭头或者没有箭头,单向的关联有一个箭头。

【代码体现】:成员变量

【箭头及指向】:带普通箭头的实心线,指向被拥有者

img

5、聚合关系(Aggregation)

聚合关系(Aggregation)表示的是整体和部分的关系,整体与部分可以分开。聚合关系是关联关系的特例,所以他具有关联的导航性与多重性。

聚合关系是关联关系的一种,是强的关联关系;

如:一台电脑由键盘(keyboard)、显示器(monitor),鼠标等组成;组成电脑的各个配件是可以从电脑上分离出来的,使用带空心菱形的实线来表示:

image-20210720155523733

【箭头及指向】:带空心菱形的实心线,菱形指向整体

img

6、组合关系(Composition)

组合关系:也是整体与部分的关系,但是整体与部分不可以分开。

组合关系是关联关系的一种,是比聚合关系还要强的关系,它要求普通的聚合关系中代表整体的对象负责代表部分的对象的生命周期

【代码体现】:成员变量

【箭头及指向】:带实心菱形的实线,菱形指向整体

img

各种关系的强弱顺序:

泛化= 实现> 组合> 聚合> 关联> 依赖

下面这张UML图,比较形象地展示了各种类图关系:

img

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值