Section4类图和对象

Section4类图和对象

ID:39010159

大小:1.71 MB

页数:91页

时间:2019-06-23

Section4类图和对象_第1页
Section4类图和对象_第2页
Section4类图和对象_第3页
Section4类图和对象_第4页
Section4类图和对象_第5页
资源描述:

《Section4类图和对象》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、1类图和对象图2类和对象是对应用问题中或软件系统中事物或概念的一种抽象描述。是对一类具有相同特征的对象的描述。3类图描述了系统中的类及其相互之间的各种关系,其本质是反映了系统中包含的各种对象类型以及对象间的各种静态关系。类图4类图的抽象层次概念层类图,描述应用领域的概念,与实现它的软件没有直接的联系.说明层类图,描述软件的接口部分,不是实现部分.实现层类图考虑实现问题,提供类的细节.可以使用UML的版型机制标明类图的抽象层次5类的定义类名属性操作6名称应该来自系统的问题域。应该是一个名词,且不应该有前缀或后缀。分为简单名称和路径名称。7属性[可见性]属性名[:类型][‘

2、[‘多重性[次序]’]’][=初值][{特性}]+public#protected-privateRoseUML可见性+size:Area=(100,100)#visibility:Boolean=falsecolors:Color[3]points:Point[2..*ordered]name:String[0..1]8操作[可见性]操作名[(参数列表)][:返回值类型][{特性}]+public#protected-privateRoseUML可见性+display():Location+hide()#create()-attachXWindow(xwing:Xwi

3、ndowPtr)9类之间的关系常见的类之间的关系包括:关联、聚集、组合、泛化、依赖等.10关联关联(association)是模型元素间的一种语义联系,它是对具有共同的结构特性、行为特性、关系和语义的链(Link)的描述.链是关联的实例关联表示类与类之间的关系链表示对象与对象之间的关系11关联//类A的源码publicclassA{publicBtheB;publicA(){}}//类B的源码publicclassB{publicB(){}}//类A的源码publicclassA{publicBtheB;publicA(){}}//类B的源码publicclassB{p

4、ublicAtheA;publicB(){}}12关联的导航特性单向关联:只在一个方向上存在导航表示双向关联:在两个方向上都有导航表示。双向关联的限制:角色的互逆13关联名用来描述关联的作用,在含义十分明显时,名字可以省略。14关联的角色关联的两端可以以某种角色参与关联,如果不标注角色则隐含用类名作为角色名.角色的多重性,表示可以有多少个对象参与该关联.15角色的多重性多重性用非负整数的一个子集来表示0..1,0..*,1..n,…如果多重性的上界大于1,则称为多值角色,通常把这种多值角色看成一个集合。由于集合是无序的,因此对于多值角色可使用一些约束。16关联的约束(1

5、)UML没有为约束定义严格的语法。(2)约束应写在{}括号中(3)约束可用自然语言写,也可用程序语言写。17关联的约束18约束规则:契约式设计契约式设计是BertrandMeyer在Eiffel语言中开发的一项技术。契约式设计的核心是断言。断言应是一个永真的逻辑公式。一旦为假即表示存在错误。断言有三种前置条件:描述在操作前应满足的条件。后置条件:描述在操作后应满足的条件。不变式:关于类的断言。对于类的所有实例,无论在操作执行前,还是执行后,不变式恒为真。19约束规则:契约式设计契约式设计方法要求:类的不变式和后置条件必须适用于所有的子类。子类只可以减弱前置条件。子类只可

6、以加强后置条件。在UML中可以使用断言技术。类图中关于类的约束实质上就是类的一种不变式。属性约束和操作约束:描述限制或合法返回值角色约束:{order}表示目标对象有顺序,{bag}表示目标对象可以多次出现。2021关联类有时需要为关联设置一些属性、操作及其它特性。UML用建模元素“关联类”来表示。UML规定:在任何两个相关的对象之间,只能存在关联类的一个实例。22关联类//Company.javapublicclassCompany{privateStringcompanyName;publicPersonemployee[];}//Person.javapublic

7、classPerson{privateintpersonName;publicCompanyemployer;}//Contract.javapublicclassEmploy{privatedataRangePeriod;}Period属性放到Company或Person类?23关联类关联类也可以用普通(正式)的类来表示。这种表示在描述一个对象与另一个对象之间,需要有多于一个的关联类实例时,是可行的。(此时使用关联类是不行的,因为那样就违反了UML的规定)24限定关联限定关联是一对多或多对多关联的另一种表达形式。它通过在关联的一方添加限

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。