一、UML基本介绍
UML是一种用于软件系统分析和设计的语言工具,它用于帮助软件开发人员进行思考和记录思路的结果
Class表示类
Interface表示接口
Dependency表示依赖
Association表示关联
Generalization表示泛化(继承)
Realization表示实现
Aggregation表示聚合
Composite表示组合
二、UML图
UML图分为静态结构图和动态行为图,其中类图是描述类与类之间的关系,是UML图中最核心的部分,所以主要学习和介绍类图。
三、UML类图
用于描述系统中的类(对象)本身的组成和类(对象)之间的各种静态关系
类之间的关系:依赖、泛化(继承)、实现、关联、聚合、组合
四、类图分类
依赖关系(Dependency)
概念
只要是在类中用到了对方,他们之间就存在依赖关系;如果没有对方,连编译都通过不了。
代码
public class PersonServiceBean { private PersonDao personDao; public void save(Person person) { } public IDCard getIDCard(Integer personid) { return null; } public void modify() { Department department = new Department(); } } public class Person{} public class PersonDao{} public class IDCard{} public class Department{}
对应的类图
小结
类中用到了对方,可以是类的成员属性、方法的返回类型、方法接收的参数类型
泛化关系(Generalization)
概念
泛化关系实际上就是继承关系,它是依赖关系的特例。
代码
public abstract class DaoSupport{ public void save(Object entity){ } public void delete(Object id){ } } public class PersonServiceBean extends DaoSupport{}
对应的类图
小结
泛化关系实际上就是继承关系;如果A类继承了B类,就说A 和 B存在泛化关系
实现关系(Implementation)
概念
实现关系实际就是A 类实现B接口,是依赖关系的特例
代码
public interface PersonService { void delete(Integer id); } public class PersonServiceBean implements PersonService { @Override public void delete(Integer id) { System.out.println("delete.."); } }
对应的类图
小结
实现关系实际上就是实现接口;如果A类实现了B接口,就说A 和 B存在实现关系