版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、郑州大学软件学院郑州大学软件学院2022-6-4姓姓 名:佘维名:佘维办公室:水环办公室:水环32363886652Email: wshe郑州大学软件学院郑州大学软件学院2022-6-4重点内容:面向对象思想的根本概念 面向对象的三大要素 面向对象与工程设计 用面向对象思想建立系统模型郑州大学软件学院郑州大学软件学院2022-6-4重点内容:面向对象思想的根本概念 面向对象的三大要素 面向对象与工程设计 用面向对象思想建立系统模型郑州大学软件学院郑州大学软件学院2022-6-41、面向对象思想的根本概念机器码:使用二进制数字;汇编语言:使用字母数字符号作为机器码的速记方式,通过汇编程序转换为机
2、器码;高级语言:使用有高级结构的语言编程,通过编译程序转换为机器码;结构化编程:自顶向下,逐步细分;面向对象编程(Object Oriented Programming,OOP):以对象为根底,以消息或事件来驱动对象执行处理。郑州大学软件学院郑州大学软件学院2022-6-4一、面向对象思想的根本概念从程序设计方法上来讲,面向对象技术是一种自下而上的程序设计方法,它不像面向过程程序设计那样一开始就需要使用一个主函数来概括出整个程序,面向对象程序设计往往从问题的一局部着手,一点一点地构建出整个程序。郑州大学软件学院郑州大学软件学院2022-6-4一、面向对象思想的根本概念学生信息管理系统 例子:郑
3、州大学软件学院郑州大学软件学院2022-6-4一、面向对象思想的根本概念 应对需求变化的能力强。 便于理解复杂的系统,并能提高系统维护性。 提高重用性。郑州大学软件学院郑州大学软件学院2022-6-4一、面向对象思想的根本概念对象object是面向对象系统的根本构造块,是一些相关的变量和方法的软件集。郑州大学软件学院郑州大学软件学院2022-6-4一、面向对象思想的根本概念郑州大学软件学院郑州大学软件学院2022-6-4一、面向对象思想的根本概念郑州大学软件学院郑州大学软件学院2022-6-4一、面向对象思想的根本概念物体看得到的东西概念看不到的东西郑州大学软件学院郑州大学软件学院2022-6
4、-4 描述对象一、面向对象思想的根本概念郑州大学软件学院郑州大学软件学院2022-6-4一、面向对象思想的根本概念 对象具有属性值刻画对象的静态特征郑州大学软件学院郑州大学软件学院2022-6-4一、面向对象思想的根本概念 对象具有行为刻画对象的动态特征郑州大学软件学院郑州大学软件学院2022-6-4 对象会对其他对象发来的要求做出反响对象会对其他对象发来的要求做出反响一、面向对象思想的根本概念郑州大学软件学院郑州大学软件学院2022-6-4 对象具有关系一、面向对象思想的根本概念郑州大学软件学院郑州大学软件学院2022-6-4 对象之间的关系:一、面向对象思想的根本概念郑州大学软件学院郑州大
5、学软件学院2022-6-4aCaraPassengeranotherPassengeraDriver关联是一种弱连接:对象之间不完全相互依赖。一、面向对象思想的根本概念郑州大学软件学院郑州大学软件学院2022-6-4聚合表示把对象放在一起,组成一个更大的对象。聚合形成“局部整体层次结构,它隐含了较大的依赖性,至少是整体对局部的依赖。一、面向对象思想的根本概念diningRoomlivingRoomkitchenmainBedroomkidsBedroombathroomsecondFloorfirstFlooraHouse郑州大学软件学院郑州大学软件学院2022-6-4组合(compositi
6、on)是一种特殊的聚合, 强调整体和局部具有相同的生命期。一、面向对象思想的根本概念public class Circle public int radius; Point center;public class Style int x, y;郑州大学软件学院郑州大学软件学院2022-6-4 对象可唯一识别一、面向对象思想的根本概念郑州大学软件学院郑州大学软件学院2022-6-4 对象的特征属性关系识别性一、面向对象思想的根本概念郑州大学软件学院郑州大学软件学院2022-6-4一、面向对象思想的根本概念类Class是具有相同属性和操作的一组对象的组合,也就是说,抽象模型中的“类描述了一组相似对
7、象的共同特征,为属于该类的全部对象提供了统一的抽象描述。郑州大学软件学院郑州大学软件学院2022-6-4 着眼于对象的属性和行为的共同性,并进行分类后形成的 类是具有相同属性和操作的对象集合的总称 类封装了客观世界中对象实体的特征与行为,即属性与方法一、面向对象思想的根本概念郑州大学软件学院郑州大学软件学院2022-6-4郑州大学软件学院郑州大学软件学院2022-6-4 找到几个类?郑州大学软件学院郑州大学软件学院2022-6-4郑州大学软件学院郑州大学软件学院2022-6-4 每一个对象都是某一个类的实例每一个对象都是某一个类的实例 每一个类在某一时刻都有零个或更多的实体每一个类在某一时刻都
8、有零个或更多的实体 类是静态的;它们的存在、语义和关系在执行前就已经定类是静态的;它们的存在、语义和关系在执行前就已经定义好了义好了 对象是动态的;对象是动态的; 它们在程序执行时可以被创立和删除它们在程序执行时可以被创立和删除郑州大学软件学院郑州大学软件学院2022-6-4一、面向对象思想的根本概念所谓消息Message是指描述事件发生的信息,是对象间相互联系和相互作用的方式。一个消息主要由5局部组成:消息的发送对象、消息的接收对象、消息传递方式、消息内容参数、消息的返回。传入的消息内容的目的有两个,一个是让接受请求的对象获取执行任务的相关信息,另一个是行为指令。郑州大学软件学院郑州大学软件
9、学院2022-6-4一、面向对象思想的根本概念所谓事件通常是指一种由系统预先定义而由用户或系统发出的动作。事件作用于对象,对象识别事件并作出相应反响 。郑州大学软件学院郑州大学软件学院2022-6-4重点内容:面向对象思想的根本概念 面向对象的三大要素 面向对象与工程设计 用面向对象思想建立系统模型郑州大学软件学院郑州大学软件学院2022-6-4二、面向对象的三大要素封装Encapsulation是把对象的属性状态和操作行为绑到一起的机制,把对象形成一个独立的整体,并且尽可能的隐藏对象的内部细节。aCoffeeMachinedrinkPricesavailableDrinksdrinkReci
10、pesdisplayDrinks()selectDrink()dispenseDrink()acceptMoney()郑州大学软件学院郑州大学软件学院2022-6-4二、面向对象的三大要素封装有两层含义:结合性信息隐蔽性郑州大学软件学院郑州大学软件学院2022-6-4二、面向对象的三大要素封装性应满足的条件:郑州大学软件学院郑州大学软件学院2022-6-4二、面向对象的三大要素封装是面向对象编程防止程序员相互干扰的一种方式。例子:借钱。郑州大学软件学院郑州大学软件学院2022-6-4二、面向对象的三大要素封装是一个重要原那么,是指把属性和操作封装进一个对象里,它的内部信息对外界隐藏,不允许外界
11、直接存取对象的属性,只能通过对象提供的有限的接口对对象的属性数据进行操作。封装的信息屏蔽作用反映了事物的相对独立性,我们可以只关心它对外所提供的接口,即能够提供什么样的效劳,而不用去关注其内部的细节问题。郑州大学软件学院郑州大学软件学院2022-6-4二、面向对象的三大要素对于客观世界的认知,既应看到其共性,也应看到其特性如果只考虑事物的共性,不考虑事物的特性,就不能反映出客观世界中事物之间的层次关系,从而不能完整地、正确地对客观世界进行抽象的描述。郑州大学软件学院郑州大学软件学院2022-6-4二、面向对象的三大要素如果说运用抽象的原那么就是舍弃对象的特性,提取其共性,从而得到一个对象集的类
12、的话,那么在这个类的根底上,再重新考虑抽象过程中被舍弃的那一局部对象的特性,那么可以形成一个新的类,这个类具有前一个类的全部特征,是前一个类的子集,从而形成一种层次结构,即继承结构。郑州大学软件学院郑州大学软件学院2022-6-4二、面向对象的三大要素继承Inheritance是一种连接类与类的之间的层次模型。继承是指特殊类的对象拥有其一般类的属性和行为。郑州大学软件学院郑州大学软件学院2022-6-4郑州大学软件学院郑州大学软件学院2022-6-4继承了其它类属性和方法的类称为子类,被继承的类称为父类或超类。子类复用父类属性和方法的过程,称为继承或泛化。二、面向对象的三大要素郑州大学软件学院
13、郑州大学软件学院2022-6-4 继承是一种连接类与类之间的层次模型继承是一种连接类与类之间的层次模型 继承意味着继承意味着“自动地拥有或自动地拥有或“隐含地复制,即在特隐含地复制,即在特殊类中不必重新对已经在一般类中所定义过的属性和行为进殊类中不必重新对已经在一般类中所定义过的属性和行为进行定义,而是特殊类自动地拥有一般类的属性和行为行定义,而是特殊类自动地拥有一般类的属性和行为 继承对类的重用性提供了一种明确表述共性的方法,即继承对类的重用性提供了一种明确表述共性的方法,即一个特殊类既有自己定义的属性和方法,又有继承下来的属一个特殊类既有自己定义的属性和方法,又有继承下来的属性和行为性和行
14、为 继承是传递的继承是传递的二、面向对象的三大要素郑州大学软件学院郑州大学软件学院2022-6-4 使子类能够比不使用继承直接进行描述的类更加简洁:子类只需要描述哪些与父类不同的地方,不使用继承而去直接描述时,需要将父类的属性和行为全部再进行描述; 能够重用和扩展现有类库资源:当使用已封装好的类库时,如果需要对某个类进行扩展,通过继承的方式很容易实现,而不需要再去重新编写; 使软件易于维护和修改:当要修改、增加某一属性和行为时,只需要在相应地类中进行改动,而它派生的所有类将自动地做了相应修改二、面向对象的三大要素郑州大学软件学院郑州大学软件学院2022-6-4二、面向对象的三大要素郑州大学软件
15、学院郑州大学软件学院2022-6-4二、面向对象的三大要素郑州大学软件学院郑州大学软件学院2022-6-4二、面向对象的三大要素郑州大学软件学院郑州大学软件学院2022-6-4二、面向对象的三大要素多态性Polymorphism是指在两个或多个属于相同类中同一函数名对应多个具有相似功能的不同函数,可以使用相同的调用方式来调用这些具有不同功能的同名函数。 郑州大学软件学院郑州大学软件学院2022-6-4二、面向对象的三大要素郑州大学软件学院郑州大学软件学院2022-6-4 下面看一组变量的定义:多态变量二、面向对象的三大要素郑州大学软件学院郑州大学软件学院2022-6-4再看下面的类层次结构:多
16、态变量二、面向对象的三大要素郑州大学软件学院郑州大学软件学院2022-6-4 因此,以下语句是合法的: 多态变量 从类的定义上来看,Truck和Train都是陆上交通工具,因此可以被当作陆上交通工具来对待; 从面向对象的程序设计思想来看,允许将一个子类型的实例赋值给它的祖先类型,因为所有发送给祖先类型的消息都可以发送给子类型二、面向对象的三大要素郑州大学软件学院郑州大学软件学院2022-6-4 郑州大学软件学院郑州大学软件学院2022-6-4 多态消息二、面向对象的三大要素郑州大学软件学院郑州大学软件学院2022-6-4 多态消息二、面向对象的三大要素郑州大学软件学院郑州大学软件学院2022-
17、6-4重点内容:面向对象思想的根本概念 面向对象的三大要素 面向对象与工程设计 用面向对象思想建立系统模型郑州大学软件学院郑州大学软件学院2022-6-4郑州大学软件学院郑州大学软件学院2022-6-4 面向对象设计的准那么包括模块化、抽象、信息隐藏、低耦合和高内聚等特征。系统设计是问题求解及建立解答的高级策略。必须制定解决问题的根本方法,系统的高层结构形式包括子系统的分解、它的固有并发性、子系统分配给硬软件、数据存储管理、资源协调、软件控制实现、人机交互接口等等。系统设计一般是先从高层入手,然后细化。 系统设计要决定整个结构及风格,这种结构为后面设计阶段的更详细策略的设计提供了根底。 郑州大
18、学软件学院郑州大学软件学院2022-6-4 瀑布模型也被称为生存周期模型,其核心思想是按照相应的工序将问题进行简化,将系统功能的实现与系统的设计工作分开,便于工程之间的分工与协作。 瀑布模型将软件生命周期划分为软件方案、需求分析和定义、软件设计、软件实现、软件测试、软件运行和维护这6个阶段。 郑州大学软件学院郑州大学软件学院2022-6-4喷泉模型是一种以对象为驱动、以用户需求为动力的模型,主要用于描述面向对象的软件开发过程。该模型认为软件开发过程自下而上周期的各阶段是相互重叠和屡次反复的,就像水喷上去又可以落下来,类似一个喷泉。郑州大学软件学院郑州大学软件学院2022-6-4基于构件的开发模
19、型利用模块化方法将整个系统模块化,并在一定构件模型的支持下复用构件库中的一个或多个软件构件,通过组合手段高效率、高质量地构造应用软件系统的过程。郑州大学软件学院郑州大学软件学院2022-6-4 敏捷方法强调适应性而非预测性、强调以人为中心,而不以流程为中心,以及对变化的适应和对人性的关注,其特点是轻载、基于时间、紧凑、并行并基于构件的软件过程。 在所有的敏捷方法中,XPeXtreme Programming方法是最引人注目的一种轻型开发方法。它规定了一组核心价值和方法,消除了大多数重量型开发过程中的不必要产物,建立了一个渐进型开发过程。 郑州大学软件学院郑州大学软件学院2022-6-4说明l
20、为了使课堂教学与实验能同步,适当打乱教材的学习顺序l 首先进入第4章的学习郑州大学软件学院郑州大学软件学院2022-6-4重点内容:lRational RoseRational Rose设计设计UMLUML的工具的工具 lRational RoseRational Rose的安装的安装lRational RoseRational Rose的使用的使用郑州大学软件学院郑州大学软件学院2022-6-4一、 Rational Rose:设计UML的工具 Rational Rose 是一个完全的、具有能满足所有建模环境包括Web开发、数据库建模以及各种开发工具和语言需求能力和灵活性的一套解决方案。 R
21、ational Rose 允许系统开发人员、系统管理人员和系统分析人员在软件的各个开发周期内,建立系统地需求和系统的体系架构的可视化模型,并且能够将这些需求和系统的体系架构可视化模型转换成代码,帮助系统开发。 郑州大学软件学院郑州大学软件学院2022-6-4一、 Rational Rose的安装郑州大学软件学院郑州大学软件学院2022-6-4 在“New新建选项卡中,我们可以选择创立模型的模板。 在“Existing翻开选项卡中,我们可以翻开一个已经存在的模型,在对话框左侧的列表中,逐级找到该模型所在的目录,然后从右侧的列表中选中该模型,单击“Open翻开按钮进行翻开。 在“Rencent最近
22、使用的模型选项卡中,我们可以选择翻开一个最近使用过的模型文件,在选项卡中,选中需要翻开的模型,单击“Open按钮或者双击该模型文件的图标即可。郑州大学软件学院郑州大学软件学院2022-6-4启动Rational Rose郑州大学软件学院郑州大学软件学院2022-6-4lCreate New Model窗体中给出了许多开发语言的模型向导,开发者可以根据自己所采用的语言来进行选择l如果不需要特定的语言环境,单击Cancel就可以直接进入主界面郑州大学软件学院郑州大学软件学院2022-6-4Rational Rose主界面郑州大学软件学院郑州大学软件学院2022-6-4 标题栏可以显示当前正在工作的
23、模型文件名称。 对于刚刚新建还未被保存的模型名称使用“untitled表示。此外,标题栏还可以显示当前正在编辑的图的名称和位置,如 Class Diagram:Logical View / Main 代表的是在Logical View逻辑视图下创立的名称为Main的Class Diagram类图。标题标题栏栏郑州大学软件学院郑州大学软件学院2022-6-4 在菜单栏中包含了所有在Rational Rose 2003 中可以进行的操作,一级菜单共有项,分别是 “File文件 “Edit编辑 “View视图 “Format格式 “Browse浏览 “Report报告 “Query查询 “Tools
24、工具 “Add-Ins插件 “Window窗口 “Help帮助。菜单菜单栏栏 郑州大学软件学院郑州大学软件学院2022-6-4 可以通过“View视图下的“Toolbars工具栏来定制是否显示标准工具栏和编辑区工具栏。 单击“Tools工具下的“Options选项,弹出一个对话框,选中“Toolbars工具栏选项卡,我们可以在“Standard Toolbar标准工具栏复选框中可以选择显示或隐藏标准工具栏,或者工具栏中的选项是否使用大图标。也可以在“Diagram Toolbar图形编辑工具栏中选择是否显示编辑区工具栏,以及编辑区工具栏显示的样式。工具工具栏栏 郑州大学软件学院郑州大学软件学院
25、2022-6-4 工作区由四局部构成,浏览器、文档区、图形编辑区和日志区。 浏览器和文档区位于Rational Rose 2003工作区域的左侧。 浏览器是一种树形的层次结构,可以帮助我们迅速的查找到各种图或者模型元素。 文档区用于对Rational Rose 2003中所创立的图或模型元素说明。 工作工作区区郑州大学软件学院郑州大学软件学院2022-6-4 编辑区包含了图形工具栏和图的编辑区域,在图的编辑区域中可以根据图形工具栏中的图形元素内容绘制相关信息。 在图的编辑区添加的相关模型元素会自动地在浏览器中添加,这样使浏览器和编辑区的信息保持同步。我们也可以将浏览器中的模型元素拖动到图形编辑
26、区中进行添加。 工作工作区区郑州大学软件学院郑州大学软件学院2022-6-4 日志区位于Rational Rose 2003工作区域的下方,用以记录了对模型的一些重要操作工作工作区区郑州大学软件学院郑州大学软件学院2022-6-4 可以通过选择“File文件菜单栏下的“New新建命令来创立新的模型,也可以通过标准工具栏下的“新建按钮创立新的模型,这时便会弹出选择模板的对话框,选择我们想要使用的模板,单击“OK确定按钮即可。 如果使用模板,Rational Rose 2003系统就会将模板的相关初始化信息添加到创立的模型中,这些初始化信息包含了一些包、类、构件和图等。创立模型创立模型 郑州大学软
27、件学院郑州大学软件学院2022-6-4 可通过选择“File文件菜单栏下的“Save保存命令来保存新建的模型,也可以通过标准工具栏下的按钮保存新建的模型,保存的Rational Rose模型文件的扩展名为.mdl。 可以通过选择“File文件菜单栏下的“Save Log As保存日志来保存日志,也可以通过“AutoSave Log自动保存日志。 保存模型保存模型 郑州大学软件学院郑州大学软件学院2022-6-4 通过选择“File文件菜单栏下的“Import导入可以用来导入模型、包或类等,可供选择的文件类型包含.mdl、.ptl、.sub或.cat等,导入模型的对话框。导入模型,可以利用现成的
28、建模。 导入模型导入模型 郑州大学软件学院郑州大学软件学院2022-6-4 通过选择“File文件菜单栏下的“Export Model .导出模型可以用来导出模型,导出的文件后缀名为.ptl。 *.ptl格式文件类似于模型文件*.mdl,但是只是模型文件的一局部。模型文件*.mdl那么保存完整的模型导出模型导出模型 郑州大学软件学院郑州大学软件学院2022-6-4 Rational Rose 2003提供了将模型生成相关网页从而在网络上进行发布的功能,这样,可以方便的系统模型的设计人员将系统的模型内容对其它开发人员进行说明。 首先,选择“Tools工具菜单栏下的“Web Publisher选项
29、。 发布模型发布模型 郑州大学软件学院郑州大学软件学院2022-6-4 Web发布器Web Publisher创立基于WebHTML的模型版本,将模型发布到Web上,通过浏览器顺序或非顺序地进行查看 Web发布器会重新创立Rose模型元素,包括图、类、包、关系、属性以及操作等Web发布器所发布的内容可以通过选项控制发布模型发布模型 郑州大学软件学院郑州大学软件学院2022-6-4 Web发布器生成的文件 在发布模型之前,应当创立一个新的文件夹发布一个模型时,需要提供一个HTML根文件的名字。通过翻开该文件来显示模型。 发布模型发布模型 郑州大学软件学院郑州大学软件学院2022-6-4 如果需要设置发布的模型生成的图片格式,可以点击“Diagram按钮, 有四个选项可以提供选择,分别是“Dont Publish Diagrams不要发布图、Windows BitmapsBMP格式、Portable Network GraphicsPNG格式和JPEGJPEG格式。“D
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 护理课件论文的实证研究方法应用
- (高清版)DBJ50∕T-528-2025 智慧灯杆建设技术标准
- 临时设施工程施工现场VR安全体验设备调试施工作业指导书
- DNA库超纯水与冷冻离心机监理细则
- (高清版)DBJ33∕T 1359-2025 城市轨道交通全自动运行系统工程技术标准
- 上海教编考试题库及答案
- 护理临床决策培训计划
- 排泄护理中的安全管理
- 销售线索管理流程及跟进模板
- 资源节约型使用承诺书5篇
- 《基于MxSim的车辆结构有限元分析》全套教学课件
- 中建三局三公司安装分公司劳务企业定额
- 2024年广东省佛山市南海实验中学中考三模化学试题
- ISO 15609-1 2019 金属材料焊接工艺规程和评定-焊接工艺规程-电弧焊(中文版)
- 公寓保洁服务方案
- 《锥套锁紧钢筋连接接头》
- 沈阳航空航天大学硕士研究生复试政审表
- 土木工程毕业设计答辩ppt
- 高光谱遥感技术与应用讲座课件
- 电感、电容对交流电的影响
- 防己种植技术粉防己亩产量种植技术多篇
评论
0/150
提交评论