首页 > 其他 > 详细

UML类图

时间:2021-06-01 14:54:36      阅读:23      评论:0      收藏:0      [点我收藏+]

UML类图

1. 方法和属性的访问权限

标识 属性
- private
# protected
+ public
~ package private

2. 关系

2.1 泛化(Generalization)

介绍

? 表示一个类(子类、子接口)继承另一个类(父类、父接口)的功能,并可以增加自己的新功能。

UML表示:空心三角形+实线

技术分享图片

代码表现:子类extends父类

public abstract class AbstractList {
}

public class ArrayList extends AbstractList {
}

2.2 实现(Realization)

介绍:一个类实现一个或多个接口的功能。

UML表示:空心三角形+虚线

技术分享图片

代码表现:类implements接口

public interface List {
}

public abstract AbstractList implements List {
}

2.3 关联(Association)

介绍:类与类之间具有强依赖关系,但是这两个类的地位是平等的。

UML表示:实线箭头

技术分享图片

代码表现:成员变量

public class Point {
  private AtomicDouble x;
  private AtomicDouble y;
}

public class Circle {
  private Point center;
  private AtomicDouble radius;
}

2.4 聚合(Aggregation)

介绍:关联关系的一种特例,体现的是拥有的关系,即has-a关系,整体和部分之间是可分离的,可以具有各自的生命周期。

UML表示:空心菱形+实线箭头

技术分享图片

代码表现:成员变量

public class Employee {
}

public class Company {
  private List<Employee> employees;
}

2.5 组合(Composition)

介绍:是一种强拥有关系,即contains-a的关系,体现了严格的部分与整体之间的关系,部分和整体的生命周期一样。

UML表示:实心菱形+实线箭头

技术分享图片

代码表现:成员变量

public class Node {
}

public class HashMap {
  private Node[] table;
}

2.6 依赖(Dependency)

介绍:两个相对独立的对象,一个对象依赖另一个对象的服务,体现为依赖关系。

UML表示:虚线箭头

技术分享图片

代码表现:局部变量、方法入参或对静态方法的调用

public class Food {
}

public class Person {
  public void eat(Food food) {}
}

UML类图

原文:https://www.cnblogs.com/mervyn-hao/p/14836566.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!