[工学]第四章 类和对象.ppt

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

UML简介 UML语言是一种可视化的的面向对象建模语言。 UML有三个基本的部分 事物(Things) UML中重要的组成部分,在模型中属于最静态的部分,代表概念上的或物理上的元素 关系(Relationships) 关系把事物紧密联系在一起 图(Diagrams) 图是很多有相互相关的事物的组 UML中有4种类型的事物 结构事物(Structural things) 动作事物(Behavioral things) 分组事物(Grouping things) 注释事物(Annotational things) UML中的关系 依赖(Dependencies) 关联(Association) 泛化(generalization) 实现(realuzation) UML中的9种图 类图(class diagram) 对象图(class diagram) 用例图(Use case diagram) 顺序图(Sequence diagram) 协作图(Collaboration diagram) 状态图(Statechart diagram) 活动图(Activity diagram) 组件图(Compomnent diagram) 实施图(Deployment diagram) 类图 举例:Clock类的完整表示 Clock类的简洁表示 对象图 类与对象关系的图形标识 依赖关系 图中的“类A”是源,“类B”是目标,表示“类A”使用了“类B”,或称“类A”依赖“类B” 类与对象关系的图形标识 作用关系——关联 图中的“重数A”决定了类B的每个对象与类A的多少个对象发生作用,同样“重数B”决定了类A的每个对象与类B的多少个对象发生作用。 类与对象关系的图形标识 包含关系——聚集和组合 类与对象关系的图形标识 继承关系——泛化 注释 在UML图形上,注释表示为带有褶角的矩形,然后用虚线连接到UML的其他元素上,它是一种用于在图中附加文字注释的机制。 UML图形标识 Clock - Hour : int - Minute : int - Second : int + ShowTime() : void + SetTime(NewH : int = 0, NewM : int = 0, NewS : int = 0) : void Clock UML图形标识 myClock : Clock - Hour : int - Minute : int - Second : int myClock : Clock UML图形标识 类 A 类 B UML图形标识 类 A 重数A 类 B 重数B UML图形标识 类 A 类 B 重数A 重数B 类 A 类 B 重数A 重数B 聚集表示类之间的关系是整体与部分的关系,“包含”、“组成”、“分为……部分”等都是聚集关系。 UML图形标识 父类 A 父类 B 子类 1 子类 2 UML图形标识 注释文字 UML图形标识 说明: (1)在调用构造函数时不必给出实参的构造函数,称为默认构造函数(缺省构造函数)。一个类只能有一个默认构造函数否则,系统将无法辨别应执行哪个构造函数。 (2)如果在建立对象时选用的是无参构造函数,应注意正确书写定义对象的语句。 (3)尽管在一个类中可以包含多个构造函数,但是对于每一个对象来说,建立对象时只执行其中一个构造函数,并非每个构造函数都被执行。 Box box1; Box box1(); class Box { public: Box(int=10,int=10,int=10); int volume(); private: int height; int width; int length; }; Box::Box(int h,int w,int l) { height=h; width=w; length=l; } int main() { Box box1; coutThe volume of box1 is box1.volume()endl; Box box2(15); coutThe volume of box2 is box2.volume()endl; Box box3(15,30); coutThe volume of box3 is box3.volume()endl; Box box4(15,30,20); coutThe volume of box4 is box4.volume()endl; return 0; } 复制构造函数时一种特殊的构造函数,具有一般构造函数的所有特性, 其形参是本类的对象的引用。 其作用是使用一个已经存在的对象(由复制构造函数的参数指定),去初始化同类的一

文档评论(0)

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

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

版权声明书
用户编号:6212135231000003

1亿VIP精品文档

相关文档