UML基础与应用之类图和包图

一、类图

(一)类

1.定义:对真实事物的抽象描述
2.包含:类名;属性;方法
3.类表示:+表示公有;-代表私有;#代表保护
在这里插入图片描述

(二)类的关系

1.关联(关联类:将两个对象连接看成一个类,叫做关联类;)
1.1 普通关联(Works in是关联名称;Employee和Employer是关联角色;0…*/1/1…*等体现多重性)
在这里插入图片描述
单向关联(导航关联);双向关联
在这里插入图片描述
1.2聚合(“整体/部分”;空心菱形表示)
在这里插入图片描述
1.3组合(实心菱形表示;部分依赖于整体)
在这里插入图片描述
2.依赖(一种使用关系,说明一个事物规格的变化可能影响到使用它的另一个事物;前者依赖于后这,箭头后依赖于箭头后)
在这里插入图片描述
3.泛化(描述的是类之间的继承关系;箭头是父类,尾部是子类)
在这里插入图片描述
3.1单重继承
在这里插入图片描述
3.2多重继承(Java中不可以直接实现多重继承,可通过接口实现)
在这里插入图片描述
4.实现(一个类元实现另一个类元的契约;虚线尾部实现箭头处的接口)
在这里插入图片描述

(三)类图构成

1.类图作用
用于描述系统的静态部分
2.类图构成
classes(类);interfaces(接口);collaborations(协作);relationships(关系);package(包);system(子系统)

(四)类图深入讨论

1.可见性(Visiblity)
public(name;+)/private(age;-)/protected(salary;#)/package(~)
在这里插入图片描述
2.范围(Scope)
2.1每个实例拥有自己的属性和方法,对于一个类的所有实例共享的成员是静态成员
2.2抽象类:不能被实例化(类图中用斜体表示);
2.3roof、leaf类在类图中用{roof}{leaf}表示;
2.4多重性
在这里插入图片描述
3.属性(Attributes)
在这里插入图片描述
4.操作(Operations)
在这里插入图片描述
5.模板类(Template Classes)
6.实用类(Utility Classes)

二、包图

1.作用
逻辑上将复杂的图模块化
2.图的图符
在这里插入图片描述
3.包的元素
类、接口、构件、用例、其他包等;若包被撤销,则其他的元素也被撤销
4.包之间的关系
泛化关系、细化关系、依赖关系
5.包的常见问题问题
在这里插入图片描述

三、对象图

(描述一个系统在某个时刻的静态结构,类图描述所有可能情况)
在这里插入图片描述

发布了63 篇原创文章 · 获赞 5 · 访问量 2839

猜你喜欢

转载自blog.csdn.net/TGB__15__ZYB/article/details/103880972