面向对象设计UML实践(第2版)部分课后习题答案.docVIP

面向对象设计UML实践(第2版)部分课后习题答案.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
面向对象设计UML实践(第2版)部分课后习题答案

第二章 2.1 2.2下图使用对象名称的代码中的变量的名称。虽然这可能是澄清当前的例子中,它运行对象名和变量名的两个截然不同的概念混淆的风险。这是有潜在危险的环境中,对象被重新分配到不同的变量。 此图说明了不同的数字可以存在一个目录条目:零个,一个或多个部分对象。 除了装配对象,此图中的所有对象已经出现答案(一)部分。 客户对象已加入在这个图中所示,发送到组件的初始投资成本信息。 2.3(a)数据重复,每个零件只能指向一个目录条目 2.4 2.7 第八章 8.1(a)“INSTANCEOF”定型只来作说明。一个事实,即对象的位置类的实例已经显示在标签中的每个对象。 (b)我们假定该计数器保持一个整数值,它被初始化为零。 “设置”和“复位”具有相同的效果,所以被建模为一个单一的操作,“setToZero”。 (c)一个枚举用于指定开关的可能状态。在这种特定的情况下,一个布尔状态变量可以被使用,但定义一个枚举,提供了更大的范围扩展。另外,由于该类接口,可以指定不指定记录的状态如何。 (d)许多“多重属性,用于记录亮着的灯组,使用图8.3所示的颜色枚举。 OCL收集文字符号已被用来显示此属性的值对象图标。 8.2(a) 租借出去,一个人可以拥有零个或更多的书籍,每本书可以借由在任何给定的时间最多只有一个人。 (b) 一个人可以有读了许多书,每本书的很多人可能已经被读出。 (c) 一块只能在同一时间占据一个方块,如果它已被捕获,它不占用广场。每平方可以最多有一个一块就可以了。如果目的是只模拟棋盘上的棋子,在这种关联的右侧的多样性应该是刚好1。 (d) 下面的多重性是指在一个给定的时间内谁是已婚的人,假设没有一夫多妻或一妻多夫。的配偶关系是对称的,它可以简单地被标记关联的名称。 (e) 一个人可以拥有零个或更多的孩子,但每个人都有正好有两个(生物)的父母。这种关系是不是对称的,因此增加角色的名字,使预期的诠释更清晰。 8.5 8.16 第九章 9.1 9.7 第十章 10.11 10.15 第十二章 12.1任何对象的客户对象链接到两个`SavingsAccount和`DepositAccount的实例图,其中,将违反XOR约束。最简单的例如图如下所示。 12.2任何对象图所示,其中一人作为主席的一个委员会,他们不是会员将违反子集约束。这一个简单的示意图如下图所示。这是假设,有没有`的memberOf person对象之间的联系及委员会A,在图上没有显示。 12.4 context Customer inv: ????savingsAccount-size() = 0 or depositAccount-size() = 0 异或约束可以用以下约束形式表示 context C inv: ????d-size() = 0 or e-size() = 0 12.8 12.9 context Employee inv: ????not manager-isEmpty() implies self.department = manager.department context Person inv: ????manager-forAll(e | e.contract.grade.salary self.contract.grade.salary) context Department inv: ????staff-exists(e | e.contract.grade.salary 100000) 12.10 表达式左边是个体,右边是聚集 context Person inv: ????not self.manager-includes(self) 12.11. context Customer inv: ????account-forAll(a | a.balance 100) 第十三章 13.1 13.4 13.15 13.16 4.17 创建预约时输入所有餐桌号码。另外,餐桌太小例外可以提供增加另外餐桌来完成预约。 界面方面,需要表示多个餐桌属于一个预约的情况。可以使用相同颜色,并增加预约ID引用。

文档评论(0)

shenlan118 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档