




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、专题二:面向对象基础与UML的组成面向对象概念UML的组成世界,你好一个UML的例子本次课主要内容面向对象概念什么是对象? 对象是系统中用来描述客观事物的一个实体,它是构成系统的一个基本单位。一个对象由一组属性和对这组属性进行操作的一组方法组成。对象的特点对象具有标识你能够对它命名,以区别于其他对象对象具有状态通常有一些数据与它相联系对象具有行为使你能够对对象做某些事,它也能为其他对象做某些事对象和类对象可以是一个人、地址、物品、事件、概念、屏幕显示或者报表。类泛化或表示一组相似的对象,是创建对象的有效模板。一个类表示一组相似的对象。对象是类的实例。属性是类知道的事情。方法是类完成的事情。 面
2、向对象的基本原理什么是抽象?类或操作等项目的基本属性 一个项目的抽象依赖于你定义抽象的上下文 抽象是在项目周围绘制一个清晰框架的手段 抽象的例子什么是封装?把相关概念组合进一个项目中,如类或组件。封装描述了如何在系统中划分功能的问题。 封装是把框体涂黑的做法。Encapsulation IllustratedProfessor Clark needs to be able to teach four classes in the next semester.什么是模块化?把复杂的事务分解成可以处理的部分帮助人们更好地理解复杂系统模块化的例子For example, break complex
3、systems into smaller modules. 什么是继承? 表示两个类之间是“is a”、“is like”或“is kind of”的关系。特殊类的对象拥有其一般类的全部属 性与方法,称作特殊类对一般类的继承。继承的分类?继承可分为单继承和多继承单继承:子类只从一个父类继承多继承:子类从多于一个的父类继承什么是多态?从字面上理解,多态就是有多种形态的意思。在面向对象技术中,多态指的是使一个实体在不同的上下文条件下具有不同意义或用法的能力。多态是保证系统有较好的适应性的一个重要手段,也是用OO技术所表现出来的一个重要特征。 多态的例子什么是类?类是具有相同属性和方法的一组对象的集
4、合,它为属于该类的全部对象提供了统一的抽象描述,其内部包括属性和方法两个主要部分。在图形上,把一个类画成一个矩形。类的属性和操作属性(attribute)是已被命名的类的特性,它描述了该特性的实例可以取值的范围。操作(operation)是一个服务的实现,该服务可以由类的任何对象请求以影响其行为类的特点同类对象具有相同的属性和方法,是指它们的定义形式相同,而不是说每个对象的属性值都相同。类是静态的;类的存在、语义和关系在程序执行前就已经定义好了。对象是动态的; 对象在程序执行时可以被创建和删除。对象和类对象可以是一个人、地址、物品、事件、概念、屏幕显示或者报表。类泛化或表示一组相似的对象,是创
5、建对象的有效模板。一个类表示一组相似的对象。对象是类的实例。属性是类知道的事情。方法是类完成的事情。 建模元素:包包是用来组织U M L模型的基本分组事物。它也有变体,如框架、模型和子系统等(它们是包的不同种类)。用包把建模元素安排成可作为一个组来处理的较大的组块: 一些元素在包外是可见的. 另一些元素要隐藏到包内.建模元素:消息消息就是向对象发出的服务请求,它包含下述信息:提供服务的对象标识、服务 (方法)标识、输入信息和回答信息。在图性上,把一个消息画成一条有向直线,通常在表示消息的线段上总有操作名。UML的组成UML的组成构造块building blocks事物things关系relat
6、ionships图diagrams事物是对模型中最有代表性的成分的抽象;关系把事物结合在一起;图聚集了相关的事物。事物事物things结构事物行为事物分组事物注释事物结构事物:UML模型中的名词,是模型中的静态部分,如类、接口、协作、用例、活动类、组件、节点;行为事物:UML模型中的动词,是模型的动态部分,如交互、状态机、活动 ;分组事物:包,用于把模型分解成“盒子”;注释事物:用来描述、说明和标注模型的任何元素。关系关系relationships关联association依赖dependency泛化generalization实现realization描述对象之间的一组链接事物的改变引起依赖
7、事物的语义改变一个元素是另一个元素的特化,而且它可以取代更一般的元素类元之间的关系,一个类元说明一份契约,另一个类元保证实现该契约图图diagrams顺序图Sequence diagrams协作图collaboration diagrams用例图use case diagrams状态图statechart diagrams活动图activity diagrams类图class diagrams对象图object diagrams构件图component diagrams部署图deployment diagrams静态模型(系统结构)动态模型(系统行为)规则UML有自己的语法和语义规则,用于:命
8、名 为事物、关系和图起的名字范围 使名字具有特定含义的语境可见性 这些名字如何让其他成分看见和使用完整性 事物如何正确、一致地相互联系执行 运行或模拟动态模型的含义是什么公共机制在UML中有4种贯穿整个语言且一致应用的公共机制,因此使得UML变得较为简单,这4种机制分别是:详述修饰通用划分扩展机制体系结构可视化、详述、构造和文档化一个软件密集型系统,要求从几个角度去观察系统。体系结构建模设计视图实现视图交互视图部署视图用例视图词汇功能行为性能可伸缩性吞吐量系统装配配置管理系统拓扑结构分布交付安装“41”视图用例视图(use case view)用例视图由描述可被最终用户、分析人员和测试人员看到
9、的系统行为的用例组成。用例视图实际上没有描述软件系统的组织,而是描述了形成系统体系结构的动力。在UML中,该视图的静态方面由用例图表现;动态方面由交互图、状态图和活动图表现.设计视图(design view)设计视图包含了类、接口和协作,它们形成了问题及其解决方案的词汇。这种视图主要支持系统的功能需求,即系统应该给最终用户的服务。在UML中,该视图的静态方面由类图、对象图表现;动态方面由交互图、状态图和活动图表现。交互视图(interaction view)交互视图展示了系统的不同部分之间的控制流,包括可能的并发和同步机制。该视图主要针对性能、可伸缩性、系统的吞吐量。在UML中,对该视图的静态
10、方面和动态方面的表现与设计视图相同,但着重于控制系统的主动类和它们之间流动的消息。实现视图(implementation view)实现视图包含了用于装配与发布物理系统的制品。这种视图主要针对系统发布的配置管理,它由一些独立的文件组成;这些文件可以用各种方法装配,以产生运行系统。它也关于从逻辑的类和构件到物理制品的映射。在UML中,该视图的静态方面由构件图表现,动态方面由交互图、状态图和活动图表现。部署视图(deployment view)部署视图包含了形成系统硬件拓扑结构的结点(系统在其上运行)。这种视图主要描述组成物理系统的部件的分布、交付、安装。在UML中,该视图的静态方面由部署图表现,
11、动态方面由交互图、状态图和活动图表现。世界,你好一个UML的例子世界,你好(一个UML的例子)关键抽象:在Web浏览器中,打印“世界,你好!”的 Java applet程序: import java.awt.Graphics; public class HelloWorld extends java.applet.Applet public void paint (Graphics g) g.drawString(“世界,你好!, 10,10); 在UML中,对这种应用的建模如下图所示,类HelloWorld 用一 个矩形表示。类HelloWorld 中给出了paint操作,在一个附属 的注解
12、中说明了该操作的实现。与Hello World直接相关的类 这个类图反映出了“世界,你好!”这个应用的基本部分,但还遗漏一些事物。按上述代码的描述,这个应用还涉及其他两个类,即Applet和Graphics,而且二者的使用方式不同。 类Applet是类Hello World的父类,类Graphics则是在类Hello World的一个操作paint 的特征标记和实现中被使用。可以在类图中表示这些类及其他们与类Hello World的不同关系,Hello World的继承层次如果针对Applet和Graphics研究Java库,将会发现这两个类是一个更大的类层次的一部分。跟踪类Applet扩展和实现的那些类,能够产成另一个类图,如下图所示。Hello World的包
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年窗口服务人员试题及答案
- 2025年中医按摩法试题及答案
- 2025年中职vb 试题及答案
- 2025年审核人员考试试题及答案
- 2025年临沂普通话试题及答案
- 2025年qc组长考试题及答案
- 机井占地协议书
- 村民征用协议书
- 杜绝回扣协议书
- 林地砍树协议书
- GEA离心机说明书
- 化工课件-中石油克拉玛依石化有限公司催化裂化装置培训课件
- 溶剂油MSDS危险化学品安全技术说明书
- 2021年黄冈麻城市教师进城考试笔试试题及答案解析
- 校园突发事件及危机应对课件
- 软件测试方案
- 加强眼健康基层服务能力建设实施方案
- 商务礼仪(金正昆)接待礼仪课件
- 现浇钢筋混凝土箱形拱桥主拱圈施工技术
- 基坑支护计算书
- 叉车重心位置与稳定性的关系PPT课件
评论
0/150
提交评论