第6章 面向对象方法学与UML.pptx

  1. 1、本文档共74页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第6章 面向对象方法学与UML6.1 面向对象方法概述面向对象方法学的要点认为客观世界是由各种对象组成的把所有对象都划分成各种对象类,每个对象类都定义了一组数据和一组方法按照子类与父类的关系,把若干个对象类组成一个层次结构的系统对象彼此之间仅能通过传递消息互相通信面向对象的软件过程在开发的早期阶段定义了一系列面向问题的对象,并且在整个开发过程中不断充实和扩充这些对象6.1 面向对象方法概述6.1.1 面向对象方法的概念6.1.1.1 对象在应用领域中有意义的、与所要解决的问题有关系的任何事物都可以作为对象以数据为中心主动性实现了数据封装本质上具有并行性模块独立性好6.1 面向对象方法概述6.1.1.2 其他概念类对具有相同数据和相同操作的一组相似对象的定义实例由某个特定的类所描述的一个具体的对象消息要求某个对象执行在定义它的那个类中所定义的某个操作的规格说明由接收消息的对象、消息选择符、零个或多个变元组成6.1 面向对象方法概述方法对象所能执行的操作,也就是类中所定义的服务属性类中所定义的数据封装把数据和实现操作的代码集中起来放在对象内部继承子类自动地共享基类中定义的数据和方法的机制6.1 面向对象方法概述多态性子类对象可以像父类对象那样使用,同样的消息既可以发送给父类对象也可以发送给子类对象重载函数重载是指在同一作用域内的若干个参数特征不同的函数可以使用相同的函数名字运算符重载是指同一个运算符可以施加于不同类型的操作数上面6.1 面向对象方法概述6.1.2 面向对象方法的主要优点符合人类的思维习惯稳定性好可复用性好可维护性好6.2 面向对象建模模型为了理解事物而对事物做出的一种抽象,是对事物的一种无歧义的书面描述由一组图示符号和组织这些符号的规则组成用面向对象方法开发软件,通常需要建立3种形式的模型描述系统数据结构的对象模型描述系统控制结构的动态模型描述系统功能的功能模型6.3 对象模型类的图形符号6.3.1 表示类的符号定义类6.3 对象模型定义类的属性类的属性应能描述并区分该类的每个对象只有系统需要使用的那些特征才抽取出来作为类的属性系统建模的目的也影响属性的选取UML描述属性的语法格式:可见性 属性名:类型名=初值{性质串}可见性:公有的(+)、私有的(-)、保护的(#)性质串:列举出所有可能取值,或者说明其它信息类变量在类图中表示为带下划线的属性6.3 对象模型定义类的操作操作围绕对类的属性数据所需要做的处理来设置,不设置与这些数据无关的操作只有系统需要使用的那些操作才抽取出来作为类的操作选取操作时应该充分考虑用户的需求UML描述操作的语法格式:可见性 操作名(参数表):返回值类型{性质串}操作的可见性:公有(+)、私有(-)参数表:参数名:参数类型名=默认值,参数名:参数类型名=默认值…类作用域操作表示为带下划线的操作6.3 对象模型普通关联示例6.3.2 表示关系的符号关联普通关联:连接两个类之间的直线通常,关联是双向的,可在一个方向上为关联起一个名字,在另一个方向上起另一个名字在表示关联的直线两端可以写上重数,表示该类有多少个对象与对方的一个对象连接6.3 对象模型关联类说明关联的性质通过一条虚线与关联连接关联类示例6.3 对象模型关联的角色关联的角色与此关联的对象所扮演的角色如果没有显式标出角色名,则意味着用类名作为角色名6.3 对象模型共享聚集示例聚集:表示类与类之间的关系是整体与部分的关系共享聚集在聚集关系中处于部分方的对象可同时参与多个处于整体方对象的构成6.3 对象模型组合示例组合部分类完全隶属于整体类,部分与整体共存整体不存在了部分也会随之消失6.3 对象模型泛化(继承)UML对定义泛化关系的要求 具体元素应与通用元素完全一致,通用元素具有的属性、操作和关联,具体元素也都隐含地具有具体元素还应包含通用元素所没有的额外信息允许使用通用元素实例的地方,也应能够使用具体元素的实例用一端为空心三角形的连线表示泛化关系6.3 对象模型抽象类示例 6.3 对象模型多重继承示例 6.3 对象模型友元依赖关系示例依赖和细化依赖关系描述两个模型元素(类、用例等)之间的语义连接关系如果独立的模型元素改变了,将影响依赖于它的模型元素用带箭头的虚线连接有依赖关系的两个类,箭头指向独立的类虚线上可以带一个构造型标签,具体说明依赖的种类6.3 对象模型细化关系类图分为3个层次概念层:在需求分析阶段使用概念层类图描述应用领域中的概念。说明层:在设计阶段使用说明层类图描述软件的接口部分(类与类之间的接口)。图6-10 细化关系的图示实现层:在实现阶段使用实现层类图描述软件系统中类的实现当对同一事物在不同抽象层次上描述时,这些描述之间具有细化关系 6.3 对象模型细化关系的图示 细化是UML中的术语,表示对事物更详细一层的描述细化

文档评论(0)

文档精品 + 关注
实名认证
内容提供者

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

版权声明书
用户编号:6203200221000001

1亿VIP精品文档

相关文档