当前位置:首页 > 西南民族大学 UML复习参考
第一部分 “UML相关”内容
1、UML是统一建模语言;建模语言是建模中的一个非常关键的因素。
2、OO开发的每个阶段都可以用UML模型对系统建模,从系统不同的角度可以分为:(UML中的图形标记非常适用于面向对象的软件设计) ●类模型(提供数据模型):包图、对象图、类图 ●状态模型(各对象的控制结构):状态图
●交互模型(对象间信息交换,系统的整体视图):用例、顺序图、活动图 针对系统构架:
●构件图、配置图
3、UML的重要内容——九种图形
4、UML六大关系
? 关联关系(Association) ? 聚合关系(Aggregation) ? 组合关系(Composition) ? 依赖关系(Dependency) ? 实现关系(Realization) ? 泛化关系(Generalization) 5、工具Rose
判断题:不是一种可视化编程语言,而是一种可视化建模语言;不是工具或知识库的规格说明,而是建模语言的规格说明,是一种表示的标准;不是过程,也不是方法,但是允许任何一种过程和方法使用它 Use Case视图包括系统中所有的角色、用例和用例图 可能包括:序列图、协作图和活动图
6、UML特点:工程化、规范化、可视化、系统化、文档化和智能化。
第二部分 “面向对象”相关内容
1、继承:如果类B继承类A,那么类A中描述的操作和信息结构将成为类B的一部分。
借助继承,可以表示类之间的类似性,并且在其他类能继承的一个类中描述这些相似性。因此,就能够复用公共的描述。继承还有利于软件维护。
通过抽取和共享公共特性就能够通用化一些类,并且把它们放在继承层次的更高位置。同样,如果希望增加新类,可以寻找这样一个类,它已经提供了适用于该新类的某些操作和信息结构。然后,让新类继承这个类,只需增加该新类所独有的那些内容。然后,使这个类专用化。
2、多态:指同一个实体同时具有多种形式(相同的操作会产生不同的动作)。 在面向对象语言中,接口的多种不同的实现方式即为多态(同样的函数在不同的类上有不同的行为或动作)。分为静态动态(同一个类中同名方法在功能上的重载)和动态动态(子类方法对父类相同声明的方法的覆盖)。多态性:是指同一个消息为不同的对象接收时,可产生不同的动作或执行结果。 3、接口
接口是一种约束形式,其中只包括成员定义,不包含成员实现的内容。 接口的主要目的是为不相关的类提供通用的处理服务。
当类实现一个接口,它就许诺实现在那个接口中执行所有的方法。 4、信息隐蔽和局部化——封装 5、继承与派生 6、可视性:(类的属性与代码实现中可能用到)
? 若可视性标记为“+”或“public”,则为公共属性,可以被外部对象访问。 ? 若可视性标记为“#’或“ protected”,则为保护属性,可以被本类或子类的对象访问。
? 若可视性标记为“-”或“ private”,则为私用属性,不可以被外部对象访问,只能为本类的对象使用。
? 可视性可以缺省,表示该属性不可视。
第三部分 “类模型”相关内容
1、类的定义:类是具有相似结构、行为和关系的一组对象的描述符。使用出现在系统中的不同类来描述系统的静态结构,类图用来描述不同的类和它们的关系。 2、类的表示和对象图的表示。 类名(首字母大写) 属性(属性列表:类型=默认值) 操作(操作列表:参数、结果) 对象名:类名 属性值 操作 3、对象图: 对象图是类图的实例,几乎使用与类图完全相同的标识。他们的不同点在于对象图显示类的多个对象实例,而不是实际的类。 4、类之间的关系:
类之间的关系包括关联关系、依赖关系、泛化关系和实现关系,其中关联关系又包括双向关联、单向关联、自关联、多重性关联、聚合关系和组合关系。
5、类的关联关系:关联关系是类与类之间最常用的一种关系,它是一种结构化关系,用于表示一类对象与另一类对象之间有 (has a)联系。 Person public class Person {
Bicycle private Bicycle bicycle; /** 骑自行车去上班 */ public void goToWork() {
bicycle.run(); } }
(1)单向关联:
类图CountrynameHasCapitalCapitalCitynameFrance:CountryHasCapitalParis:CapitalCityname=\对象图name=\USA:Countryname=\HasCapitalWashington:CapitalCityname=\
(2)双向关联:
Customer-products: Product[]purchaseis sold toProduct-customer: Customer
(3)多重关联:
Form-buttons: Button[]1..10..*Button
(4)自关联:一个类的两个对象间的关联。
containsNode-subNode : Node
(5)关联的约束:关联可加上一些约束,以加强关联的含义; ①排序:用{ordered}表示类的对象需要排序,不允许重复值
②对于一对对象,二元关联通常至多有一个链接,在关联端标注{bag}、{sequence},允许在一对对象上有多重链接。
? 包(bag):无序,可重复(允许重复值的元素集合) ? 序列(sequence):有序,可重复(允许重复值的有序元素集合) ? 序列关联是一个有序包,而有序关联是一个有序集合。 (6)链接是关联的实例。 6、类的限定关系(限定符):将有效的多重性从“多”降为“一”。
7、类的泛化关系:泛化关系也就是继承关系,也称为“is-a”关系,泛化关系用于描述父类与子类之间的关系。泛化关系用带空心三角形的直线来表示。箭头指向父类。
Person#name : string#age : int+move() : void+say() : voidStudent-studentNo : string Teacher-teacherNo : string+teach() : void+study() : void8、类的实现关系:接口之间也可以有与类之间关系类似的继承关系和依赖关系,但是接口和类之间还存在一种实现关系,在这种关系中,类实现了接口,类中的操作实现了接口中所声明的操作。类与接口之间的实现关系用带空心三角形的虚
共分享92篇相关文档