uml类图和对象

上传人:san****019 文档编号:70832711 上传时间:2019-01-18 格式:PPT 页数:81 大小:2.36MB
返回 下载 相关 举报
uml类图和对象_第1页
第1页 / 共81页
uml类图和对象_第2页
第2页 / 共81页
uml类图和对象_第3页
第3页 / 共81页
uml类图和对象_第4页
第4页 / 共81页
uml类图和对象_第5页
第5页 / 共81页
点击查看更多>>
资源描述

《uml类图和对象》由会员分享,可在线阅读,更多相关《uml类图和对象(81页珍藏版)》请在金锄头文库上搜索。

1、第六章 类图与对象图,6.1 类图与对象图的基本概念 6.2 类图的组成 6.3 类图的创建概述 6.4 类图的创建示例 6.5 对象图,山东科技大学(泰山科技学院)信息工程系 范明芳 ,概要静态视图,构成面向对象模型的基本元素有类、对象和类与类之间的关系等。类图和对象图合称为结构模型视图或者静态视图,用于描述系统的结构或静态特征。 类图用来描述系统中的类以及类与类之间的静态关系等; 对象用来描述特定时刻实际存在的若干对象以及它们之间的关系。 一个系统的模型中可以包含多个对象图,每个对象图描述了系统在某个特定时刻的状态。,山东科技大学(泰山科技学院)信息工程系 范明芳 ,概要类图作用,类图是逻

2、辑视图的重要组成部分,用于对系统的静态结构建模,涉及到具体的实现细节。 在系统分析阶段,类图主要用于显示角色和提供系统行为的实体的职责; 在系统设计阶段,类图主要用于捕捉组成系统体系结构的类结构; 在系统编码阶段,根据类图中的类及它们之间的关系实现系统的功能。,山东科技大学(泰山科技学院)信息工程系 范明芳 ,概要类图的地位,山东科技大学(泰山科技学院)信息工程系 范明芳 ,6.1 类图与对象图的基本概念,类图和对象图统称为结构模型视图或者静态视图。其中类图抽象角度描述系统的静态结构或特征。系统的静态结构构成系统的概念基础: 真实世界的概念; 抽象的概念; 实现方面的概念; 计算机领域的概念。

3、,6.1.1 类图和对象图的定义,山东科技大学(泰山科技学院)信息工程系 范明芳 ,6.1 类图与对象图的基本概念,UML 模型中这些类型包括: 类 接口 数据类型 组件,概念:Classifer(分类器/类元) 对有实例且有属性的结构特征和操作形式的行为特征的建模元素的统称。可以包括参与者、信号、节点、用例等。,山东科技大学(泰山科技学院)信息工程系 范明芳 ,6.1 类图与对象图的基本概念,1、类 类包含了系统内部的信息结构也包含系统内部的行为和与外部事物交互。通常完整类图包含下列元素: 类 接口 依赖关系 泛化关系 关联关系 实现关系,山东科技大学(泰山科技学院)信息工程系 范明芳 ,6

4、.1 类图与对象图的基本概念,山东科技大学(泰山科技学院)信息工程系 范明芳 ,6.1 类图与对象图的基本概念,2、对象图 对象图描述了系统在某一个时刻特点的静态结构,是类的实例和快照,即类图中的各个类在某一个时间点上的实例及其静态关系的静态写照。 对象图包含:对象:类的实例 链 :类关系的实例 二者区别与联系?,山东科技大学(泰山科技学院)信息工程系 范明芳 ,6.1 类图与对象图的基本概念,山东科技大学(泰山科技学院)信息工程系 范明芳 ,6.1 类图与对象图的基本概念,6.1.2 类图和对象图的作用,对系统的静态视图进行建模通常利用以下三种方式建模: 为系统的词汇建模 :确定系统最基本的

5、元素 模型化简单协议 :确定类/对象的关联 模型化逻辑数据库模式:数据库设计蓝图,山东科技大学(泰山科技学院)信息工程系 范明芳 ,6.2 类图的组成,6.2.1 类,类是构成类图的基础,也是面向对象系统组织结构的核心。类是对资源的定义,它所包含的信息主要用来描述某种类型实体的特征以及对该类型实体的使用方法。 对象是具体的实体,它遵守类制定的规则。从软件的角度看,程序通常包含的是类的集合以及类所定义的行为,而实际创建信息和管理信息的是遵守类的规则的对象。,类定义了一组具有状态和行为的对象,这些对象具有相同的属性、操作、关系和语义。 属性和关联用来描述状态。 属性通常用没有身份的数据值表示,如数

6、字和字符串。 关联则用有身份的对象之间的关系来表示。 行为由操作来描述,方法是操作的实现。,山东科技大学(泰山科技学院)信息工程系 范明芳 ,6.2 类图的组成,类的图示结构,类名称,属性列表,操作列表,山东科技大学(泰山科技学院)信息工程系 范明芳 ,6.2 类图的组成,1、类的名称: 类的名称是每个类中所必有的构成元素; UML约定类名称首字符必须是大写; 斜体字类名称表示为一个抽象类; 可以定义类名称时,说明从属的包。,山东科技大学(泰山科技学院)信息工程系 范明芳 ,6.2 类图的组成,2、属性(Attribute) 可见性:类中属性的可见性主要包括公有( public ) 、私有(P

7、rivate )和受保护( Protected ) 以及(Implementation)。 属性名:按照UML的约定,单字属性名小写。如果属性名包含多个单词,这些单词要合并,且除了第一个单词外其余单词的首字母要大写。 (3) 属性字符串:属性字符串用来指定关于属性的附加信息,例如某个属性应该是永久的。任何希望添加在属性定义字符串值但又没有合适地方可以加入的规则,都可以放在属性字符串里。 (4) 初始值 : (5) 属性类型:属性也可以作为一个类属属性来定义,这就意味着此属性被该类的所有对象共享。在类图中,类属性带有一条下划线。,山东科技大学(泰山科技学院)信息工程系 范明芳 ,6.2 类图的组

8、成,class Invoice public: double amount; Date daate=new Date(); char customer; Invoice() number_of_invoices+; private: static int number_of_invoices; ; int Invoice :number_of_invoices=0;,山东科技大学(泰山科技学院)信息工程系 范明芳 ,6.2 类图的组成,完整的语法表示 可见性属性名多重性:类型初值特殊串,山东科技大学(泰山科技学院)信息工程系 范明芳 ,6.2 类图的组成,山东科技大学(泰山科技学院)信息工程系

9、 范明芳 ,6.2 类图的组成,3、类的操作: 类的操作是对类的对象所能做的事务的抽象,相当于一个服务的实现。,完整的语法表示: 可见性 操作名(参数表):返回类型 特殊串,山东科技大学(泰山科技学院)信息工程系 范明芳 ,6.2 类图的组成,4、职责:在操作部分下面的区域,可以用来说明类的职责。职责是类对该类所有对象具有相同属性和操作共同组成的功能和服务的抽象。类的职责是是自由形式的文本描述的非形式化的内容,写一个短语,一个句子等。在UML中,把职责列在类图底部的分隔栏中。 5、约束。说明类的职责是消除二义性的一种非形式化的方法,形式化的方法是使用约束。约束指定了该类所要满足的一个或多个规则

10、。在UML中,约束是用一个花括号括起来的自由文本。 6、类的注释信息,山东科技大学(泰山科技学院)信息工程系 范明芳 ,6.2 类图的组成,Eg1:每个人都有自己的姓名(name)与年龄(age),均可以改变姓名(changeName())、增加年龄(increaseAge()) 要求将其建模。 Eg2: class Trade String product;/产品 int quantity;/数目 double total_price;/总价格 /运算:计算价格 void calculatePrice() /提取单价unit_price,然后计算总价格 /total_price=unit_p

11、rice*quantity /数量大时另加折扣 ,山东科技大学(泰山科技学院)信息工程系 范明芳 ,6.2 类图的组成,抽象类的原则:不能创建具体实例的类。 在C+中,即为带有纯虚函数的类,称之为抽象类。 抽象类只能作为基类来使用,其纯虚函数的实现由派生类给出。 抽象类是不能定义对象的;为了强调一个类是抽象类,可将该类的构造函数说明为保护的范围控制权限。,山东科技大学(泰山科技学院)信息工程系 范明芳 ,6.2 类图的组成,纯虚函数的格式: class virtual ()=0; ;,山东科技大学(泰山科技学院)信息工程系 范明芳 ,6.2 类图的组成,class point public:

12、point(int i=0,int j=0)x0=i;y0=j; virtual void set()=0; virtual void draw()=0; protected: int x0,y0; ;,山东科技大学(泰山科技学院)信息工程系 范明芳 ,6.2 类图的组成,二、关联,即:两个或多个类之间的关系。,多重性通过数值说明(mn)。,关联的种类:,注: (1)关联会有一个名称和一个数值说明。 (2)没有任何方向指示的关联总是一个双向关联。,山东科技大学(泰山科技学院)信息工程系 范明芳 ,6.2 类图的组成,关联命名原则:,其名称可用名词,但一般使用动词;当建立一个类图模型时,该类图应

13、该能够反映出那个将被建立的系统,即:符合该系统的问题域。,山东科技大学(泰山科技学院)信息工程系 范明芳 ,6.2 类图的组成,Eg3:一辆汽车可以有一个或多个所有者,并且一个人可以拥有0辆或多辆汽车,则:,山东科技大学(泰山科技学院)信息工程系 范明芳 ,6.2 类图的组成,注:若无指定具体的多重性,则默认为1。,山东科技大学(泰山科技学院)信息工程系 范明芳 ,6.2 类图的组成,Eg4: (1)一个保险公司拥有多份保险合同,这些合同与一个或多个客户关联; (2)一个客户拥有多份保险合同(0对多),这些合同与一个保险公司关联; (3)一份保险合同位于一个保险公司和一个或多个客户之间。保险合

14、同同时与一个客户(或多个客户)和一个保险公司相关联; (4)保险合同在一份(0或1)保险契约(一份书面形式的保险合同)里表达; (5)保险契约与保险合同关联。 请描述其类图。,山东科技大学(泰山科技学院)信息工程系 范明芳 ,6.2 类图的组成,6.2.2 接口,在没有给出对象实现和状态的条件下对对象行为的描述,接口包含操作但不包含属性,且它没有对外界可见的关联。,接口是特殊类 接口的依赖关系 接口也可以进行一般化和特殊化的处理,山东科技大学(泰山科技学院)信息工程系 范明芳 ,6.2 类图的组成,6.2.3 类之间的关系,1、依赖关系(Dependency) 依赖表示两个或多个模型元素之间语义上的连接关系。它表示了这样一种情形,对于一个元素的某些改变可能会影响或提供消息给其他元素,即其他元素以某种形式依赖于其他类元。 某个对象的功能依赖于另外的某个对象,而被依赖的对象只是作为一种工具在使用,而并不持有对它的引用。,山东科技大学(泰山科技学院)信息工程系 范明芳 ,6.2 类图的组成,6.2.3 类之间的关系,根据这个定义,关联、实现和泛化都是依赖关系,但是它们有更特别的语义。在UML中,依赖用一个从元素指向提供者的虚箭头表示,用一个构造型的关键字来区分它的种类。 UML定义了5种基本依赖类型: 绑定

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号