欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

设计模式:9.UML类图和类的关系

程序员文章站 2024-02-20 23:34:04
...

UML类图

1.基本介绍
  • UML(统一建模语言),是一种用于软件系统分析和设计的语言工具,它用于帮助软件开发人员进行思考和记录的结果。
  • UML本身是一套化学符号的规定,就像数学符号和化学符号一样,这些符号用于描述软件模型中的各个元素和他们之间的关系,比如类、接口、实现、泛华、依赖、组合、聚合等
  • 使用UML来建模,常用的工具有Rational Rose,还可以使用一些插件来建模
2.UML符号

因为在IDEA中没有找到太好的可图形编辑的UML插件,所以就使用Eclipse中的AmaterasUML插件进行展示。
设计模式:9.UML类图和类的关系

3.UML图的分类

画UML类图的目的是把自己的思想描述给别人看,关键在于思路和条理。

  • 用例图(use case)
  • 静态结构图:类图、对象图、包图、组件图、部署图
  • 动态行为图:交互图(时序图和协作图)、状态图、活动图
    类图是描述类与类之间的关系的,是UML图中最核心的。
4.类图的简单示例
public class Person{
	private Integer id;
	private String name;

	public void setName(String name){
		this.name = name;
	}
	public void getName(){
		return name;
	}
}

设计模式:9.UML类图和类的关系

5.类之间的关系

依赖、泛化(继承)、实现、关联、聚合、组合

6.类图-依赖关系(Dependence)
  • 只要在类中用到了对方,那么他们之间就存在依赖关系。
  • 示例代码:
/** 人员 **/
public class Person{
}
/** 身份证信息 **/
public class IdCard{
}
/** 部门信息 **/
public class Department{
}
/** 人员数据库操作 **/
public class PersonMapper{
}

/** 人员操作类 **/
public class PersonService{
	private PersonMapper mapper;
	
	public void save(Person person){
	}
	
	public IdCard getIdCard(Integer personId){
	}

	public void initDartment(Person person){
		Department department = new Department();
	}
}

以上代码中与PersonService存在的依赖关系的类:
设计模式:9.UML类图和类的关系

  • 使用类图表示:
    设计模式:9.UML类图和类的关系
  • 构成依赖关系的情况:
    在类中使用到了对方:是类中的成员属性、是方法的返回类型、是方法接受的参数类型、在方法中使用到。
7.类图-泛化关系(generalization)