UML详解-类图.ppt

  1. 1、本文档共78页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
UML详解-类图

类图 UML用类图(class diagram)表示类、接口及其关联。 类图用于静态对象建模。 类图应用在领域建模和概念透视图中。 类图 ?名称(类名):每个类都有一个惟一的名称。 ?属性:是已被命名的类的特性,它描述该类实例中包含的信息 ?操作(方法):是类所提供的服务,它可以由类的任何对象请求以影响其行为 ?属性名和操作名首字母通常为小写。 属性和操作 在画类图的时候没有必要将全部的属性和操作都画出来。实际上,在大部分情况下你也不可能在一个图中将类的属性和操作都画出来。在画类图时可以只将感兴趣的属性和操作画出来就可以了。可以用”...”表示还有属性或方法没有画出来。为了更好地组织属性或方法,可以在一组功能相同的属性或方法前加上一个描述的前缀(中的文字: 类图的职责和约束、注释 职责指的是类所担任的任务,类的设计要完成什么样的功能,要存担的义务。一个类可以有多种职责,设计得好的类一般至少有一种职责,在定义类的时候,将类的职责分解成为类的属性和方法。 通常在UML中在类图的最下方用单独的部分列出类的职责。 类的职责其实只是一段或多段文本描述。 约束是指定类要满足的一个或多个规章 注释是最重要的一种修饰。一个注释在UML中是一个图形符号,描述了和它相关联的元素或一组元素的限制或注释语。 练习:建立“医院病房监护系统”的类与对象模型 类的识别 实例 发现类 小王是一个爱书之人,家里各类书籍已过千册,而 平时又时常有朋友外借,因此需要一个个人图书管 理系统。该系统应该能够将书籍的基本信息按计算 机类、非计算机类分别建档,实现按书名、作者、 类别、出版社等关键字的组合查询功能。在使用该 系统录入新书籍时系统会自动按规则生成书号,可 以修改信息,但一经创建就不允许删除。该系统还 应该能够对书籍的外借情况进行记录,可对外借情 况列表打印。另外,还希望能够对书籍的购买金 额、册数按特定时间周期进行统计 实现 一个元素完成另外一个元素的操作功能 如接口类及其实现;接口没有属性,只有声明 的操作方法(对方法没有实现部分),而由实 现类具体定义实现部分。 类图的阅读 示例类图 先看清有哪 些类,然后 看看类之间 存在的关 系,并结合 多重性来理 解类图的结 构特点以及 各个属性和 方法的含义 类图的阅读 读图过程 读出类: Order、OrderItem、Customer、Consignee、 DeliverOrder、Peddlery、Prodcut 读出关系: 从图中关系最复杂(也就是线最密集)的类开始阅读,本 图中最复杂的就是Order类。 OrderItem和Order之间是组合关系,根据箭头的方向可知 Order包含了OrderItem。 Order类和Customer、Consignee、DeliverOrder是关联关 系。也就是说,一个订单和客户、收货人、送货单是相关 的。 产品是属于某个商户的,可以注册0到多个产 品 Prodcut(0…n) Peddlery(1) 每个订单项中都包含着唯一的一个产品 Product(1) OrderItem(1) 每个商户可以有相关的0个或多个送货单 DeliverOrder(0…n) Peddlery(1) 每张送货单都对应着一个收货人 Consignee(1) DeliverOrder(1) 一张送货单对应订单中的一到多个订单项 OrderItem(1…n) DeliverOrder(1) 说明:系统 根据订单项 的产品所属 的商户,将 其分发给商 户,拆成了 多个送货单 ! 一个订单有一个或多个送货单 DeliverOrder(1…n) Order(1) 订单是由订单项组成的,至少要有一个订单项,最多可以 有n个 OrderItem(1…n) Order(1) 每个订单只能够有一个收货人 Consignee(1) Order(1) 订单是属于某个客户的,网站的客户可以有0个或多个订单 Order(0…n) Customer(1) 分析 目标类及多重性 源类及多重性 类图的阅读 读图过程 多重性:用来说明关联的两个类之间的数量关系 类图的阅读 读图过程 理解方法与图 Order类,有两个方法:dispatch()和close(),从名字中可以猜出 它们分别实现“分拆订单生成送货单”和“完成订单”。 DeliveOrder()类中则有一个Close()方法,同理它应该表示“完成 送货”。 而在OrderItem中有一个stateChange()方法和de

文档评论(0)

yan698698 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档