类图与对象图:
考点:填类名,方法名,属性名;填多重度;填关系
比如说题目中会把上图中的书籍列表,书籍,借阅记录,借阅记录列表隐藏起来,让你去填类名
有以下几种多重度:
有以下几种关系:依赖关系,泛化关系,关联关系,聚合关系,组合关系,实现关系
考点:依赖和实现关系考察的频率不大;泛化和组合,聚合会常考到。
实现关系是面对接口,泛化是面对类,所以它们都是箭头;组合和聚合都是菱形
什么是依赖关系,泛化关系,关联关系,聚合关系,组合关系,实现关系?
依赖关系:指的是一个类依赖于另一个类的定义,依赖关系是单向的,简单地理解就是类A使用到了类B,这种关系具有偶然性,临时性,是中非常弱的关系,类B的变化会影响到A;具体的表现为:局部变量,方法中的参数和静态方法的调用。
泛化关系:指的是一个类继承另一个类的功能,并可以增加自己新功能的能力
实现关系:指的是一个类实现接口,表示类具备了某种能力
关联关系:表示类与类之间的连接,它使得一个类知道另外一个类的属性和方法
关联关系体现的是两个类,或者类与接口之间的强依赖关系,这种关系很强烈,比依赖更强,不是偶然性的,也不是临时性的,而是一种长期性,相对平等的关系,表现在代码层面,为被关联的类B以类属性的形式出现在类A中,也可能是关联类A引用了被关联类B的全局变量
聚合关系:是关联关系的特例,是强的关联关系,聚合是整个与个体的关系,即has-a关系,此时整体和部分是可以分离的,他们具有各自的生命周期,部分可以属于多个对象,也可以被多个对象共享;比如计算机和CPU,公司与员工的关系;在代码层面聚合与关联是一致的,只能从语义上来区分。
组合关系:也是关联关系的一种特例,体现的是一种contain-a关系,比聚合更强,是一种强聚合关系。它同样体现整体与部分的关系,但此时整体与部分是不可分的,整体生命周期的结束也意味着部分生命周期的结束,反之亦然。如大脑和人类。
体现在代码层面与关联时一致的,只能从语义来区分。
参考:https://www.cnblogs.com/itplay/p/10671715.html
顺序图:
特点:表现出了处理事务的时间顺序
简介:顺序图通过消息表现出了对象间的交互关系
每一个箭头对应着消息,矩形对应着对象,虚线表示生命线,执行顺序是从上往下
考点:补全消息名,我们可以通过题干的上下文进行分析,例如下图中的6和7的消息名称缺失了,需要补全;其次是补全对象名;
活动图:
简介:粗实线表示从这里开始产生了多少并行的线程,一直到另一个粗实线的位置,它们又合并了;菱形表示分支,椭圆举行表示行为;
带泳道的活动图,可以更加明确哪个活动是归属于谁的
考点:补全缺失的部分,根据题干自己画出一个活动图,然后和题目中给出的比较并查看哪些部分缺失了。
![](https://img-blog.csdnimg.cn/20210427084858910.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3hjOTE3NTYzMjY0,size_16,color_FFFFFF,t_70)
![](https://img-blog.csdnimg.cn/20210427084935360.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3hjOTE3NTYzMjY0,size_16,color_FFFFFF,t_70)
状态图:
简介:状态图表示状态的变迁,以状态为结点,箭头表示事件,从一个状态触发了一个事件从而变成了另一个状态,从而导致了状态的变迁。
考点:补全状态名和事件名,根据题干先自己各个状态和事件之间的转换,然后和题目中的比较,补全缺失的部分。
通信图:
通信图又称作协作图,是顺序图的另一种表达方式,它们之间的差别在于顺序图包含了时间的概念,而通信图则没有包含时间的顺序;所以一般将通信图和顺序图统称为交互图。
考点:补全对象名和消息名