欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    计算机软件及应用第5章类图及对象图课件.ppt

    • 资源ID:1548459       资源大小:1.08MB        全文页数:109页
    • 资源格式: PPT        下载积分:16金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要16金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    计算机软件及应用第5章类图及对象图课件.ppt

    问题:,教学进程,1、谈谈用例图的作用。2、用例之间存在着( ),( ),( ),( )关系?,?,问题:,教学进程,3、下面几种用什么符号表示: 用例, 关联, 扩展, 包含,?,问题:,教学进程,4、下面说法错误的是: A 泛化表示一般和特殊的关系 B 用例之间存在泛化关系 C 参与者之间存在泛化关系 D 参与者和用例之间存在泛化关系,?,问题:,教学进程,5、下面说法错误的是: A 参与者是与所建立系统交互的人或物 B 参与者可以是人,也可以是其他系统 C 参与者是系统的一部分,是用例图的重要组成部分 D 参与者之间存在泛化关系,?,类图及对象图,5.1 类的定义5.2 类的关系5.3 类图5.4 几个特殊问题5.5 对象图5.6 包图,第5章,类图及对象图,5.1.1 类的概念5.1.2 类的属性5.1.3 类的操作5.1.4 类的类型,第5章,5.1 类的定义,5.1.1 类的概念,1. 类的定义 类(class): 具有相似结构、行为和关系的一组对象。 2.类的表示,类名,属性,操作,3.类的其他几种表示形式, 简化表示, 缩略表示,实体类,界面类,控制类,4.类名, 名词或名词短语(动词或动词短语表示控制类), 尽可能用明确、简短,业务领域中事物的名称,避免使用抽象、无意义的名词,例如:人,桌子,图形,汇总, 用英文,第1个字母大写,例如:Shape, Person, 可分为简单类名,带路径类名,例如: Item Business:Item,例如:帐户,订单,事物,问题:,教学进程,1、指出下面命名有问题的的类。,?,5.1.2 类的属性,1. 属性的含义 属性(attribute): 描述类所表示事物的静态性质。 2.属性的格式,可见性属性名:类型 多重性次序=初始值特性,5.1.2 类的属性,1. 属性的含义 属性(attribute): 描述类所表示事物的静态性质。 2.属性的格式,第1个英文单词首字母小写,其它单词首字母大写 contactName credintLimit isPrepaid,可见性属性名:类型 多重性次序=初始值特性,5.1.2 类的属性,1. 属性的含义 属性(attribute): 描述类所表示事物的静态性质。 2.属性的格式,该属性对外部实体的显现程度. 可见public : + 受限protected: # 私有private : -,可见性属性名:类型 多重性次序=初始值特性,5.1.2 类的属性,1. 属性的含义 属性(attribute): 描述类所表示事物的静态性质。 2.属性的格式,属性的数据类型: 字符串:String 日期:Date 布尔:Boolean 整型:Int,可见性属性名:类型 多重性次序=初始值特性,5.1.2 类的属性,1. 属性的含义 属性(attribute): 描述类所表示事物的静态性质。 2.属性的格式,表示属性值的取值的多寡,以及有序性: 例如: name:String0.1 表示属性”name”可能无值,也可能仅有一个值. points:Point2.* ordered 表示有两个或多个值,有序,可见性属性名:类型 多重性次序=初始值特性,5.1.2 类的属性,1. 属性的含义 属性(attribute): 描述类所表示事物的静态性质。 2.属性的格式,表示属性初始所取的值: 例如: #visibility:Boolean=false 表示属性”visibility”初始取”false”,可见性属性名:类型 多重性次序=初始值特性,5.1.2 类的属性,1. 属性的含义 属性(attribute): 描述类所表示事物的静态性质。 2.属性的格式,表示属性约束说明: 例如: #visibility:Boolean=false读写 表示属性”visibility”可读,写任何希望添加在属性定义字符串值但又没有合适地方可以加入的规则,都可以放在属性字符串里。,可见性属性名:类型 多重性次序=初始值特性,问题:,教学进程,1、指出下面属性名的含义。,?,+studentName:String=“黎明”#studentBirthDay:Date=1999-10-21-price:float=12.01R/W,5.1.3 类的操作,1. 操作的含义 操作(operation): 描述类所表示事物的动态性质。 2.操作的格式,可见性操作名(参数列表):返回类型特性,5.1.3 类的操作,1. 操作的含义 操作(operation): 描述类所表示事物的动态性质。 2.操作的格式,可见性操作名(参数列表):返回类型特性,第1个英文单词首字母小写,其它单词首字母大写 close() creditRecording(),5.1.3 类的操作,1. 操作的含义 操作(operation): 描述类所表示事物的动态性质。 2.操作的格式,该操作对外部实体的显现程度. 可见public : + 受限protected: # 私有private : -,可见性操作名(参数列表):返回类型特性,5.1.3 类的操作,1. 操作的含义 操作(operation): 描述类所表示事物的动态性质。 2.操作的格式,该操作的输入参数,可以为空. 例如: #create() +hide() -ttachXWindow(xwin:Xwindow),可见性操作名(参数列表):返回类型特性,5.1.3 类的操作,1. 操作的含义 操作(operation): 描述类所表示事物的动态性质。 2.操作的格式,该操作的返回值的类型. 例如: +display():Location,可见性操作名(参数列表):返回类型特性,问题:,教学进程,1、指出下面操作名的含义。,?,+setName(String:name)+getName():String+creatbook(),5.1.4 类的类型,边界类位于系统与外界的交界处,承担系统与外界的信息功能.,1.边界类,边界类处在用例图中,参与者与用例的关联处,可以根据用例图发现边界类。,说明:通过use case图可以确定需要的边界类。每个actor/use case交互至少要有一个边界类。但并非每个actor/use case对要生成唯一边界类,多个actor启动同一use case时,可以用同一个边界类与系统通信。例如:,实体类对应着现实中的客观实物,用来保存信息,一般对应着数据表、文件等。,2.实体类,实体类可以从现实中存在的客观事物,以及需要持久存放的信息两方面来发现。,说明:通常,每个实体类在数据库中有相应的表,实体类中的属性对应数据库中表的字段。实体类可以通过事件流和交互图发现。实体类通常用领域术语命名。,控制类承担着事务处理,控制调控的控制作用。,3.控制类,一个用例中最少会有一个控制类,用来控制用例中的事件顺序,也可以在多个用例之间协调用例之间的联系。,一个例子:订货系统,类图及对象图,5.2.1 关联5.2.2 聚集和组合5.2.3 泛化5.2.4 依赖,第5章,5.2 类之间的关系,5.2.1 关联,1. 关联的定义 关联的通俗含义 表示事物之间的一种牵连式的固有联系。 例如:,关联,5.2.1 关联,1. 关联的定义 关联的本质含义 关联(association):表示两个类之间存在某种语义上的联系,它是一种结构关系,规定了一种事物的对象可以和另一种事物的对象相联系。 关联可以分为单向关联,双向关联。,单向关联,双向关联,例:单向关联所生成的Java代码:(可以选择是否生成类的缺省构造方法),public class B /* * roseuid 3DAFBF0F01A2 */ public B() ,public class A public B theB; /* * roseuid 3DAFBF0F01FC */ public A() ,2.关联的特性, 关联名,关联名,如果关联关系已经清楚,就无需关联名,2.关联的特性, 关联的角色,如果关联名与角色名相同,则不标出角色名,关联的角色,2.关联的特性, 关联的多重性,0.1 : 0或10.n ,0.* : 0或多11.n : 1到多* : 0到多,关联的角色,关联的多重性,2.关联的特性, 关联类,通过关联类描述关联的属性,操作,及其它信息。,关联类,2.关联的特性, 关联的约束,通过约束加强关联的含义。例如,“帐户”不能同时与“人”和“公司”有关联。,约束,2.关联的特性, 限定关联,通过限定符来规定关联的限定关系。例如,“文件目录”通过“文件名”来与具体的文件对象进行关联。 “银行”通过“帐户”与具体的“人”对象进行关联。,限定关联,3.关联的种类, 一元(自返)关联, 二元关联,3.关联的种类, 多元关联,三元关联,4.对关联须注意的一个问题,关联一定指的是类中对象与类中的对象之间的连接对应关系。,类图,对象图,问题:,教学进程,“教师”和“学生”两个类之间存在授课关系,一个教师可以教授多个学生,一个学生可以由多个教师授课,标出这两个类的关系。,?,问题:,教学进程,采购员从供货商处订货,双方需要签订订单,一个采购员可以订多个供货商的货品,一个供货商也可以给多个采购员供货。 要求: 1. 提取这个问题涉及的类; 2. 定义各个类之间的关系,并画出类图。,?,1.提取本问题的类,?,类是否提取完全了,还有没有隐藏的没有提取的类?,1.提取本问题的类,2.确定类之间的关系,2.确定类之间的关系,?,货品是由供应商提供,但订单所订的货品怎么样反映出来?,2.确定类之间的关系,5.2.2 聚集和组合,1. 聚集 聚集(aggregation): 表示类之间一种松散的整体与部分的组成关系,是一种特殊的关联。,表示,例子,5.2.2 聚集和组合,2. 组合 组合(composition): 表示类之间一种紧密的整体与部分的组成关系,也是一种特殊的关联。,表示,例子,5.2.2 聚集和组合,3. 聚集与组合的区别 聚集松散,组合紧密;,5.2.2 聚集和组合,3. 聚集与组合的区别 聚集松散,组合紧密; 一个部分事物对象可以属于多个聚集对象,但一个部分事物对象仅能属于一个组合对象;,5.2.2 聚集和组合,3. 聚集与组合的区别 聚集松散,组合紧密; 一个部分事物对象可以属于多个聚集对象,但一个部分事物对象仅能属于一个组合对象; 聚集的对象生命周期可以不同,但组合对象则是同存同亡。,问题:,教学进程,举出一个具有聚合关系的类图的例子。,?,5.2.3 泛化,1. 泛化的含义 泛化(generalization): 表示事物之间的一般与特殊的关系。也可以称为继承关系。 泛化关系除了表示类与类之间的关系之外,还可以表示参与者、用例、包、构件、接口等建模元素之间的关系。,5.2.3 泛化,2. 泛化的表示,例子,表示,例子:,5.2.4 依赖,1. 依赖的含义 依赖(dependency): 表示两个元素X、Y,如果X的变化必然导致Y的变化,则称Y依赖X。 依赖关系不仅限于类,用例、包、构件之间都可以存在依赖关系。,5.2.4 依赖,2. 依赖的表示,例子,表示,在类中,依赖由各种原因引起,如:一个类向另一个类发消息;一个类是另一个类的数据成员类型;一个类是另一个类的某个操作参数类型。,问题:,教学进程,下面几个模型图中,( )能够正确地表示出“一个雇员只有一个经理,经理可以管理多个雇员,也可以不管理一个雇员”这样的意思。,?,问题:,教学进程,下面对类之间关系的描述,( )是正确的。 A 聚集关系中的部分只属于一个整体; B 组合关系中的部分可能属于整体; C 关联是表示对象之间的关系; D 泛化是表示对象之间的关系。,?,类图及对象图,5.3.1 类图的概念5.3.2 类图的抽象层次5.3.3 建立类图,第5章,5.3 类图,5.3.1 类图的概念,类图(Class Diagram): 是由类,相关建模元素,及其关系构成的图,用来描述类之间的静态关系。 类图在系统中处在核心位置。也是UML中最为重要的一种图。,5.3.2 类图的抽象层次,在系统的不同开发阶段,类图可以具有不同的抽象程度。随着开发的深入,类图应该越来越详细、具体。 可以分为:概念层,逻辑层,实现层。,概念层,逻辑层,实现层,概念层(Conceptual)类图描述应用领域中的概念,一般地,这些概念和类有很自然的联系,但两者并没有直接的映射关系。说明层(Specification)类图描述软件的接口部分,而不是软件的实现部分。实现层(Implementation)类图才真正考虑类的实现问题,揭示实现细节。,不要过早陷入实现细节,根据项目开发的不同阶段,采用不同层次的类图。如果处于分析阶段,应画概念层类图;当开始着手软件设计时,应画说明层类图;当考察某个特定的实现技术时,则应画实现层类图。,建立类图的一般步骤:, 研究分析问题领域,确定系统需求;,5.3.3 建立类图,建立类图的一般步骤:, 研究分析问题领域,确定系统需求; 确定类,明确类的含义和职责,确定类的属性和操作;,5.3.3 建立类图,建立类图的一般步骤:, 研究分析问题领域,确定系统需求; 确定类,明确类的含义和职责,确定类的属性和操作; 确定类之间的关系。关联,泛化,聚集,组合,依赖;,5.3.3 建立类图,如何发现类和它们之间的关系,名词-动词分析法找出以上来源中的名词或名词短语,作为候选类对候选类进行筛选,去掉冗余的、和系统无关的、以及非独立的类以动词为线索确定类之间的关系,建立类图的一般步骤:, 研究分析问题领域,确定系统需求; 确定类,明确类的含义和职责,确定类的属性和操作; 确定类之间的关系。关联,泛化,聚集,组合,依赖; 调整和细化类及其关系,解决重复和冲突;,5.3.3 建立类图,建立类图的一般步骤:, 研究分析问题领域,确定系统需求; 确定类,明确类的含义和职责,确定类的属性和操作; 确定类之间的关系。关联,泛化,聚集,组合,依赖; 调整和细化类及其关系,解决重复和冲突; 绘制类图,并增加相应说明。,5.3.3 建立类图,类图及对象图,第5章,5.4 几个特殊问题, 对象类 可以实例化为对象的类。我们前面所提的例子都属于对象类。 抽象类 不能直接产生实例的类。抽象类的类名一般被写成为斜体。,5.4.1 对象类和抽象类,派生属性和派生关联的概念 可以从其它属性或关联计算推演得到的属性和关联。 在派生的名字前面加/,以示区别。 派生容易产生不一致,应注意。,5.4.2 派生属性和派生关联,派生关联,派生属性,5.4.3 接口(Interface),接口是一组用于描述类或构件的一个服务的操作。在图形上,把接口画为一个圆;其扩展形式是接口表示为一个构造型化类。,接口,接口是版型化的类,版型为的类,如下图所示:,5.5 对象图,例:表示网络间节点关系的类图及其一个对象图的例子。,类图,对象图,Rose中对象图的表示:,类图,对象图,类图和对象图的区别,注意点:,教学进程,1、类图是用来描述系统资源和要素相互之间的静态结构关系。 区分类图和用例图之间的区别,注意点:,教学进程,2、类图可以用于业务模型,需求模型,逻辑模型和设计模型中。 业务模型:对业务资源的关系建模 需求模型:系统要素关系建模 逻辑模型:系统要素关系建模 设计模型:系统要素关系建模,注意点:,教学进程,3、类的类型可以具有三种类型: 界面类:表示外界与系统的交互接口 实体类:表示实体型事物 控制类:表示控制和协调作用的要素,注意点:,教学进程,4、类的关系具有四种: 关联:表示类中对象之间的链接关系 组成:表示事物之间的整体和部分关系,(聚合,组合) 泛化:表示事物的一般和特殊关系 依赖:事物之间的因果关系,注意点:,教学进程,5、类图的抽象层次: 概念层 逻辑层 实现层,注意点:,教学进程,6、类可以优化,一个复杂类可以分解为多个简单类。,例如:,教学进程,注意点:,教学进程,7、描绘类图时,应根据所要表现的应用需要来提取要素,绘制类图。,例如:,教学进程,描述公司与个人雇佣关系的类图。,方法1:,方法2:,问题为:,教学进程,提取企业与个人雇佣关系的类图。 一个企业可以雇佣多个人员。企业的属性包括名称、住址、电话、简况。人员的情况包括姓名、年龄、性别、住址、电话、简历等。雇佣的信息包括雇佣的开始日期、截止日期,简要说明等。双方要签订雇佣合同。雇佣还涉及到人员所从事的工作岗位。,方法3:,教学进程,练习1:,教学进程,绘制图书馆图书借阅管理的类图。 对于图书馆里的每一种图书,计算机管理目录中包括:书名、作者、ISBN号、出版社、单价。每一种图书馆都藏多册,每一册图书对应着一个唯一的图书编号。有许多注册读者,读者的信息包括读者编号、姓名、出生日期、职业、电话、通信地址、邮政编码、邮箱。每一个读者拥有一个借书证,借书证包括读者编号、注册日期、读者类型。读者每次可以凭借书证借图书,图书馆要对读者借书登记借书记录,借书记录中登记读者、所借图书、借出日期、返还日期、管理员等信息。,练习1:,教学进程,例2.如何认识面向对象中的元素,例如:比赛的目标是要把篮球投入篮框并且要尽量比对手得更多的分数。每个篮球队由5名队员:两个前锋,两名后卫和一名中锋。上面一小段文字里面,能够抽象出什么呢?,如何认识面向对象中的元素,例如:比赛的目标是要把篮球投入篮框并且要尽量比对手得更多的分数。每个篮球队由5名队员:两个前锋,两名后卫和一名中锋。红色为名词,蓝色为动词,如何认识面向对象中的元素,例如:比赛的目标是要把篮球投入篮框并且要尽量比对手得更多的分数。每个篮球队由5名队员:两个前锋,两名后卫和一名中锋。,小结,教学进程, 5.1 类的定义 5.1.1 类的概念 5.1.2 类的属性 5.1.3 类的操作 5.1.4 类的类型 5.2 类之间的关系 5.2.1 关联 5.2.2 聚集和组合 5.2.3 泛化 5.2.4 依赖,第5章 类图和对象图,END,(1) 类与对象概念的区别?(2) 类图一般对系统的什么建模?(3) 类之间存在那几种关系?(4) 关联都有那些特性?(5) 类有几种类型?如果把一个类的类名写成为斜体字,则表示这个类是一个什么类?类的可见性有那几种?Public表示什么?,教学进程,本章作业,

    注意事项

    本文(计算机软件及应用第5章类图及对象图课件.ppt)为本站会员(小飞机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开