面向对象系统分析与设计第5章 对象责任:属性.pptVIP

面向对象系统分析与设计第5章 对象责任:属性.ppt

  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文档。上传文档
查看更多
第5章 对象责任:属性 本章要求 1 定义属性及其目的。 2 指出有利于发现属性的几个问题。 3 定义三种属性。 4 描述属性数据词典技术。 每个对象自己的情况称为属性。 每个对象自己应该执行的功能称为服务。 5.1 属性 属性名是一个模板或模式,可以应用到有关类的所有对象实例。在商业信息系统中,有时一些类没有任何属性。 有时,一个对象实例的值可能与另一对象实例的值相同,这只是偶然现象。如人的眼睛只有黑,蓝,褐等几种,但生日属性就有很多种可能。 属性值也可以叫属性状态,有的属性状态确定后就不变,例如出生日期,有的属性值可能经常改变,如体重属性。 属性在类中加入了更多的细节。 标识和定义属性是一个不断进行的交互式过程,需要系统分析员与用户交互。一定的问题域可能有多个属性,但是坑只有一部分是系统的必要要求。在前面的章节中,这个必要的子集称为信息系统的责任。需要进行分析,修剪候选属性清单,直至所得清单为信息系统完成责任所必需的,如图5.3 所示。 属性由服务操纵,总的说来,一个特定的类的属性只能由其本身的服务来操纵。面向对象的这一特性支持为处理问题域复杂性而引入的封装或信息隐藏原则。也就是说,一个特定类中的服务有责任处理和改变其属性的状态或数值。有些面向对象的编程语言支持朋友对象,朋友对象有权处理其他朋友指定的对象。 对属性状态所作的改变可以是特定属性所允许的任何变化。 5.1.1 确定属性 确定属性和寻找对象一样,必须由系统分析员和用户共同参与完成。 依赖属性模板可能存在不需要的属性留在 系统中使处理和存储的需求增加而引起混乱和冗余。也可能遗漏属性,导致信息系统无法形成某项输出。系统分析员应该和用户共同商量属性的取舍,防止返工。 可以向用户提出一些问题帮助决定许多类的必要属性。 1 总体上对“我”怎样描述? 2 在这个特定问题域内对“我”怎样描述? 3 作为类或对象,“我”必须了解什么? 4 随着时间推移,“我”需要记住什么状态信息? 5 “我”可能处于什么状态? 除了这些问题,还可以有更多问题。 5.1.2 属性类型 提到属性及其状态,一般,信息系统至少存在3类属性。 (1 单值属性(2)互斥属性(3)多值属性单值属性在任何时刻只有一个值或者状态 5.1.3针对不同类型属性的面向对象方法的策略 运用面向对象方法开发信息系统的一个目标是,简化嵌入信息系统的程序代码的决定逻辑。图5.5中类的一个服务的嵌入程序代码必须将领小时工资和领周薪的雇员区分开来,因为两种类型的对象都与该类有联系,程序代码必须区分处理,而面向对象方法可以为每种类型的雇员个创建一个新类(如图5.7)来解决问题。 5.1.4 多值属性的面向对象策略 多值属性也可以通过创建通用—特定模式来进行更好的表示。 在图5.6中,由于第1,第3个同学上过2所大学,所以存在5个“学生”对象,并且每个属性都有数据值,引起了冗余。 如图5.9所示,多值属性可以在整体-部分对象联结模式中降为较低级来避免冗余。面向对象模型得到两个类:“学生”和“所上大学”。 5.1.5 录象商店实例—寻找属性 录象商店信息系统模型的用户需求现在已经包括类,经过一些讨论得到如图5.10列出的属性。 还有一个文档对于我们也很重要,那就是定义了属性和修改规则的数据词典,图5.11给出了录象商店实例的属性数据词典样本。 小结 本章侧重讨论关于‘我’知道什么的对象责任。寻找属性是面向对象方法十分重要的部分。本章给出了定义,描述和表示属性的例子。讨论和表示了单值属性,多值属性以及互斥属性。 * * 学生 学生姓名 地址 体重 出生日期 等 学生姓名 地址 眼睛颜色 体重 出生日期 王小 海淀学院路 黑色 46 4-12-1974 李虎 丰台区 黑色 75 12-2-1966 刘水 广州 黑色 100 1-12-1977 张三 保定 褐色 77 2-11-1980 … … … … … 图5.2显示属 性值的类 初次接触对象、属性和状态时,在头脑中想象某些例子很有帮助,图5.2表示了学生类的想象。 学生 属性 服务 什么是必要的属性

文档评论(0)

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

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

1亿VIP精品文档

相关文档