- 1、本文档共10页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
软考UML大题识点总结
UML图
UML提供了9种不同的模型图,用来对系统建模。
类图、对象图、
用例图、
序列图、协作图、
状态图、活动图、
构件图、部署图。
UML的设计视图包含了类、接口和协作,其中,设计视图的静态方面有类图和对象图表现;动态方面由交互图(序列图和协作图)、状态图和活动图表现。
类图
描述系统的对象结构,它们显示构成系统的对象类以及这些对象类之间的关系。
类图是:静态设计视图。
对象图
对象图类似类图,但并不描述对象类,它们对实际的对象实例建模—显示实例属性的当前值。
对象图是:静态设计视图。
用例图
用例图以图形化的方式描述系统与外部系统及用户的交互。换句话说,它们以图形化的方式描述了谁将使用系统,以及用户期望以什么方式与系统交互。
序列图
是场景的图形化表示,描述以时间顺序组织的对象之间的交互活动。
序列图:动态方面进行建模。
协作图
或称通信图。强调收发消息的对象的结构组织,类似序列图,但重点不是消息的时间顺序,它以一种网状格式表现对象之间的交互。
协作图和序列图称为:交互图。
协作图:动态方面进行建模。
状态图
对一个特定对象的动态行为建模,说明一个对象的生命周期---对象可以经历各种状态,以及引起对象从一个状态向另一个状态转换的事件。
状态图:动态方面进行建模。
活动图
活动图是一种特殊的状态图,它展示了在系统内从一个活动到另一个活动的流程。
活动图:动态方面进行建模。
构件图
用来描述系统的物理结构,它可以用来显示程序代码如何分解模块。展示一组构件之间的组织和依赖。
构件图:静态实现视图。
部署图
描述系统中硬件和软件的物理架构,它描述构成系统架构的软件构件,处理器和设备。
它与构件图相关,通常一个节点包含一个或多个构件。
部署图:静态实施视图。
UML叙述
UML文档仅仅是设计与开发人员采用UML语言进行系统分析与设计的结果,并没有给出如何进行开发和采用何种开发流程,同样也不指导如何进行面向对象设计。
UML文档描述了面向对象分析与设计的结果。
UML关系
UML有4种关系:依赖、关联、聚集(关联一种)、组合(聚集的另一种形式)、泛化(继承)、实现
依赖
1)、-------或------是依赖。
2)、其中一个事物(独立事物)发生变化会影响另一事物(依赖事物)的语义。
3)、例如自行车bicycle和打气筒pump
Bicycle类和Pump类之间是依赖关系,在Bicycle类中无需定义Pump类型的变量。Bicycle类的定义如下:
public class Bicycle{????/** 给轮胎充气 */????public void expand(Pump pump){????pump.blow();????}}
Bicycle类调用Pump,但是并不是Pump p=new Pump();的那种实例化的调用,它依赖的是现在已存在一个对象,而不是实例化的一个新对象。
Bicycle ------- Pump。Bicycle 依赖Pump。
关联
1)、——或——是关联。
2)、两个相对独立的系统,当一个系统的实例与另一个系统的一些特定实例存在固定的对应关系,这两个系统之间为关联关系。
给定一个连接两个类的关联,可以从一个类的对象导航到另一个类的对象,反之亦然。通过一个指示的单向箭头修饰关联,可以显示地描述导航的方向。
3)、[A] —-c—[B],正确的描述是:类A的实例中包含了对类B的实例的引用。
导航方向A——B,说明从类A的实例导航到类B的实例,因此类A中必然包含一个对类B的实例的引用。图C表示的是关联一端的角色名称。
4)、例如客户和订单,每个客户对应一个特定订单;再例如公司和员工,每个公司对应一些特定的员工,每个员工对应一特定公司;例如自行车和主人。
Person类与Bicycle类之间存在关联关系,这意味着在Person类中需要定义一个Bicycle类型的成员变量。以下是Person类的定义:
public class Person{????private Bicycle bicycle; //主人的自行车
????public Bicycle getBicycle(){??return bicycle;???}????public void setBicycle(Bicycle bicycle){?????this.bicycle=bicycle;??}????/** 骑自行车去上班 */????public void goToWork(){??????bicycle.run();???} }
5)、关联关系是类与类之间的联接,它使一个类知道另一个类的属性和方法。关联
文档评论(0)