UML图普遍用于编程中的流程表达,方便我们梳理类自身的关系或者类与类,类与接口的依赖关系等,也是学习设计模式、看懂类关系的基础。可以在实际编码前先画UML图用来表达流程,方便自己和他人理解代码。
一、UML图用来表示类与接口
1、Student类
public class Student {
private Long id;
private String name;
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
使用UML图表达:
其中,-表示private,+表示public,冒号后表示返回值类型
2、StudentDao接口
Java代码如下:
public interface StudentDao {
public Student getStudentById(Long id);
}
UML图如下:
3、StudentDaoImp类
public class StudentDaoImp implements StudentDao {
@Override
public Student getStudentById(Long id) {
//具体实现代码忽略
return null;
}
}
二、用UML图表示各类或接口之间的关系:
1、继承关系(extends):空心三角箭头的实线表示,由子类指向父类,或者由子接口指向父接口
如Student类继承Person类
2、实现关系(implements):空心三角箭头的虚线表示,从类指向实现的接口。
如StudentDaoImp类实现了StudentDao接口
3、依赖关系(该类在某方法中使用到某类):类A指向类B的带箭头虚线表示
4、关联关系(该类引用了某类作为全局变量):类A指向被关联类B的带箭头实线表示,在关联的两端可以标注关联双方的角色和多重性标记。