其中图片来源于网络中其他大神的博客,若有盗用请见谅!
uml类图:类图属于uml中的概念模型,描述系统内部的组成结构。
下面介绍一下类图中的元素:
1.类:类用矩形表示,是一组具有相同属性、相同操作、相同关系和相同语义的对象的抽象。第一行是类名,第二行是类中的属性名,第三行是类中的方法。
若要实例化,则在类名左边加上对象名并用 : 隔开。
在描述属性和类的过程中,+号代表public,-号代表private(子类无法看到超类的私有属性或方法),#号代表inhert(子类可以看到超类的inhert属性或方法)/表示导出属性(可以通过其他值计算得出的属性) ~表示同包中可见 下划线表示静态属性或方法.
类中一类特殊的类称为主动类,能够起到控制活动的类,至少拥有一个线程或进程。
主动类的实例称为主动对象,一个主动对象拥有一个控制线程并可以控制活动,具有独立的生存期。简而言之,可视为线程。
嵌套类又被称为内层类,声明在类中,只能通过外部类进行访问。
A类包含B类
2.接口:是描述某个类或构件的一个服务操作集。
接口有两种,一种为供给接口,另一种为需求接口。
供给接口:
需求接口:
3.包:
4.依赖关系(dependency):一个事物的变化影响另一个事物的变化。
5.关联关系(association):两者之间是平等关系。
1)导向性:
2)多重性:
判断多重性的方法:将一边对象设为1,另外对象相应的个数即为对应对象的个数。
3)关联名:
4)角色名:
关联类即是关联也是类,它不仅像关联那样连接两个类,本身还定义一组属于关系本身的属性。类似于ER图中的关系。
(//多对多的联系中,我们可以运用关联类来化简成一对一的关系.每个类出一个ID组成关联类.)
6.聚合关系(aggregation):部分和整体的关系。菱形指向整体。部分(part object)是可共享的。
7.合成、组合(composition):更强于整体和部分的关系。整体的生命周期是一致的。部分(part object)是非共享的。
8.泛化(Generalization):也可以理解为继承。
9.实现(Realization):
10.注释
注释可以用在任何图中,不局限于类图。注释的图示是右上角有折角的矩形,通过虚线连接被注释的元素
11.约束
约束:{xor},用来说明规则。
12.限定符
多出来的方框表示限定符,存在限定符的关联成为受限关联。表示某种限定关系。
如一对多的关系中,可以使用primary key做限定符,能够将一对多的关系转换成一对一.
13.模板类
可以根据占位符或参数来定义类,而不用说明实际类型。
14.构建一张类图的过程。
分析模型在领域模型中加入业务需求,从软件实现的角度思考.如运用界面实现目的.
15.类的构造型.
构造型必须基于元模型中特定的现有类型或类。构造型可扩展已有类型和类的语义,但不能改动它们的结构。构造型默认的表示方法是在关键
词周围加上尖角双括号.
构造型几乎适用于UML中的任何元素,包括类、属性、操作以及关联等.