- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
类(static)作用域指的是此构成只有一个副本
8.模板类 图10.6 模板类 8.模板类 图10.6-1 模板类-隐式表示 8.模板类 模版类、实例化的类及其绑定关系的UML模型可以通过正向工程,得到对应的程序设计语言代码。 下面就是对图10.6通过正向工程得到的C++源程序代码。 #define N9 9 class ClassB public: int j;}; class ClassA public: int i;}; template class Item, class Value, int nClassID class Map { public : Map () int bind (Item i, Value v) ; int ID; }; typedef Map ClassA,ClassB,N9 OrderMap; template class Item, class Value, int nClassID Mapltem, Value, nClassID : :Map ( ) {} template class Item, class Value, int nClassID int MapItem,Value,nClassID: :bind (Item i, Value v) {} 9.标准扩充 UML的扩充机制同样适用于类。 UML的扩充机制为软件系统的建模者提供了定义自己的建模元素的能力。 例如 .可以用标记值对类进行修饰, .可以用变体来定义具有特殊意义的类等。 UML扩充机制除了给其使用者定义新的模型元素的自由度外,它本身也利用此扩充机制对其标准的建模元素进行了一些扩充。 这些扩充是UML里通过约束、变体和标记值等扩充机制预定义的一些关键字,它们被称为标准扩充(standard elements) 在UML里,对类定义了四种标准扩充,它们是: 9.标准扩充 (1). metaclass(元类): 元类( metaclass)是类的一个变体,表明此类的实例是类。 元类通常用来定义元模型(metamodel)。 ·元模型是用来定义UML建模元素的模型。 ·元类是定义类的类。 在模型图上,如果在类的名字的上方标以关键字《metaclass》,就代表此类是元类。 9.标准扩充 (2). powertype(超类型) : 超类型是类的变体,表明此类是一个元类,而且其实例是一个指定类的所有导出类。 在一个类的继承关系网中(图10.7),考查一个基类 (tree)的所有导出类。 .如果我们考虑在此模型的元模型中描述这些导出类, 那么可以认为这些导出类是元模型中某一类型 (类型(type) :类型也是类的变体,它定义了此类的对象的范围及可对这些对象施加的操作。它是程序设计语言中类型的抽象)的所有实例的集合, 这类型就是超类型(图10.7) 9.标准扩充 图10.7 超类型 9.标准扩充 (3). stereotype(变体) : 它是一个在元模型中定义变体的关键字。 它是元类的一个名为《stereotype》的变体,表明此元类的实例是类图上的一个建模元素的变体。 例如:图10.8是一个类图,但它描述的是定义类及其变体《actor》的元模型(即Class和Actor都是元类) 在元模型上,类及其变体之间是继承的关系, 因为从元类的意义上看,类的变体继承了类的结构(类的元类的结构包括属性和操作)。 为了强调actor是class的变体,就把actor的源类标以《stereotype》. 9.标准扩充 图10.8 变体的元模型 9.标准扩充 (4). class utility: class utility是类的变体。它本身是一个类,但其操作和属性都具有类作用域。 10.类(class)和分类符(classifier) 类是对软件系统建模时最经常用到的建模元素。 它抽象了软件系统的词汇, 描述了这些词汇对应的事物的结构和行为。 类的一个重要的特征就是它的抽象/实例两分法(dichotomy) 这意味着类是软件系统内的坚实对象的抽象, 它描述了这些对象的公共的结构和行为。 类在软件系统中类被实例化为对象,存在于各种交互之中。 在UML里,类不是唯一的具有抽象/实例两分特性的建模元素。 其它具有抽象/实例两分特性的建模元素包括: 接口、 数据类型、 信号、 部件、 结点、 子系统。 10.类(class)和分类符(class
您可能关注的文档
最近下载
- 义务教育版(2024)四年级全一册第7课《数字编码随处见》.pptx VIP
- 《工程勘察定向钻探技术规程》.pdf VIP
- 多联机空调施工组织设计方案.docx VIP
- 计算机应用基础(Windows10+WPSOffice 2019)中职全套教学课件.pptx
- DELL EMC 存储设备健康检查报告(模板).doc VIP
- 金融知识竞赛题库第四部分中国人民银行法试题及答案.doc VIP
- 2025-2030年中国猪苓中药材行业现状调查及投资前景预测研究报告.docx
- 大疆无人机公司介绍.ppt VIP
- 防酸碱劳保培训课件.pptx VIP
- GBZT 181-2024 建设项目放射性职业病危害评价报告编制标准.pdf VIP
文档评论(0)