对象模型图【OMD】阅读指南对象模型图【OMD】阅读指南.doc

对象模型图【OMD】阅读指南对象模型图【OMD】阅读指南.doc

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

补充几个名词概念: UML:Unified Modeling Language 统一建模语言,是用来对软件密集系统进行可视化建模的一种语言。UML为面向对象开发系统的产品进行说明、可视化、和编制文档的一种标准语言。 OMD:Object model diagrams 对象模型图表。 首先来看看OMD能帮我们做什么? 1. 该类支持哪些接口; 2. 完成任务需要哪些对象; 3. 如何使用该类的对象; 4. 是否可以直接实例化类; 5. 接口有哪些方法和属性; 6. 是否有其它类也支持该接口; 7. 对象间的关系 下面图示中,便是贯穿本书的对象模型图的钥匙。 这些符号是基于UML 画图工具创建的,UML 符号是面向对象分析和设计的工业图样标准。 对象模型图中提供的信息非常多,是对象浏览器中信息的重要补充。Visual Basic,或者其它的开发环境,都会列出所有的类和成员,但不会指明这些类之间的关系。所以,对象模型图是非常有利于读者对ArcInfo 组件的理解的! 本书使用UML 来描述ArcInfo 组件,即ArcObjects,并描述你能够创建的数据模型。 以下详细说明。 1. 类和对象 在UML 图中有三种类型的类:抽象类(abstract class)、可创建类(createable class)与可实例化类(instantiable class)。 抽象类不能用以创建新对象,但可以用来指定子类。举个例子,“line”(线)是“primaryline”(干线)和“secondary line”(副干线)的抽象类。 可创建类指的是那些你能够直接使用开发环境中的对象定义语法来创建对象。比如在Visual Basic 中是这样书写:Dim As New object 或者CreateObject object。 可实例化类不能够直接创建新对象,但是这种类的对象能够作为其它对象的属性被创建或是从其它类的方法中创建。------比较难理解。 2. 关联 在抽象类、可创建类和可实例化类之间,有几种存在的关联(或称关系)。 联系(association)便描述了类之间的关联。在两端的类中可以定义多重性( Multiplicity)关联。 在这张图上,一个业主能有拥有一块或多块宗地;同样地,一块宗地可以被一个或多个业主所共有。 多重性关联就是限制对象类与其它对象关联的数目关系。以下是用于多重性关联的符号: 1 —— 一个并且只有一个,这种多样性是可选的;如果不标明,则默认为“1” 0..1 —— 零个或一个 M..N —— 从M 到N(正整数) *或者0… * —— 从零到任意正整数 1… * —— 从一到任意正整数 类继承(type inheritance)定义了专门的类,它们拥有超类的属性和方法,并且同时也有自身的属性和方法。 上图说明primary line 和secondary line 是line 的一种类型。 实例化(Instantiation)指定一个类的对象有这样的方法,它能够创建另外一个类的对象。 pole 对象有一个方法能够创建transformer 对象。 聚合(Aggregation)是一种不对称的关联方式,在这种方式下一个类的对象被认为是一个“整体”,而另一个类的对象被认为是“部件”。 一个transformer bank 正好有3 个transformer 。在这个图中transformer 能和一个transformer bank 相关联,但当transformer bank 移除以后,transformer 依然能够存在。 组成(Composition)是一种更为强壮的聚合方式,此种方式下,“整体”对象控制着“部分”对象的生存时间。 一个pole 包含一个或多个crossarm。在这个图中当pole 被移除后,crossarm 就不能再使用了。因为pole 控制着crossarm 的生存时间。 在安装完AE后,我们就可以在相关目录中找到AE的OMD图, 一般在 安装目录\DeveloperKit\Diagrams下 下为ArcEngine中OMD的截图: 其中 OMD中的符号: 一个三角形符号 表示继承 菱形的黑色小块 表示组成 虚线前头带个箭头 表示用来创建 * 表示对应关系1:N 一条直线表示 联合 类的类别: 抽象类:不能创建或实例化,从来没有一个抽象类的实例 ????????? 用于定义子类的公共接口,子类继承其定义的接口。 ????????? OMD符号为:二维的内部有阴影的矩形。 实例化类:不能创建,从别的对象获得实例。 ????????? OMD符号为:3D矩形内部没有阴影。 可创建的类:用New关键字创建对象或者从别的对象获得运行实例。 ?????????

您可能关注的文档

文档评论(0)

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

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

1亿VIP精品文档

相关文档