UML关系图
Posted 慢跑中的小薛
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了UML关系图相关的知识,希望对你有一定的参考价值。
关系的含义
类和类之间的关系:依赖,泛化(击沉),实现,关联,组合和聚合
UML类图
简单类图
@Data
public class Person{
private Integer id;
private String name;
}
类的依赖 、泛化、实现
依赖
//类1
public class Department {
}
//类2
public class IDCard {
}
//类3
public class Person {
}
//类4
public class PersonDao {
}
//依赖1~4个类的
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();
}
}
UM实现图
依赖关系的小结:
1.只要是类中用到了对方,那么他们之间就存在依赖关系。
2.如果是类的成员属性
3.如果是方法的返回类型
4.是方法的接收参数
5.方法中使用到
泛化
//类一
public abstract class Animal {
abstract void run();
}
public class Dog extends Animal {
@Override
void run() {
System.out.println("小狗四条腿跑...");
}
}
实现
//接口
public interface Animal {
void run();
}
//实现接口的类
public class Dog implements Animal {
@Override
public void run() {
System.out.println("小狗四条腿跑...");
}
}
关联、聚合、组合
关联
public class Person{
private IDCard idcard;
}
public class IDCard{
//private Person person; 如果注释了 就是单项关联 如果放开注释就是双向关联
}
聚合
什么是聚合关系:
表示整体和部分的关系,整体和部分可以分开
public class Mouse {} //类一
public class Monitor {} //类二
//表示整体和部分的关系,整体和部分可以分开
//假设离开了鼠标和显示器,这个类还是个电脑
public class Computer {
private Mouse mouse;
private Moniter monitor;
public void setMouse(Mouse mouse) {
this.mouse = mouse;
}
public void setMonitor(Monitor monitor) {
this.monitor = monitor;
}
}
组合
public class Head {}
public class IDCard{}
public class Person {
//聚合关系
private IDCard idCard;
//组合关系,当person销毁heady也一起销毁
private Head head = new Head();
}
以上是关于UML关系图的主要内容,如果未能解决你的问题,请参考以下文章