软件工程与实践 第8章 面向对象与uml语言

软件工程与实践 第8章 面向对象与uml语言

ID:46882541

大小:683.50 KB

页数:57页

时间:2019-11-28

软件工程与实践 第8章 面向对象与uml语言_第1页
软件工程与实践 第8章 面向对象与uml语言_第2页
软件工程与实践 第8章 面向对象与uml语言_第3页
软件工程与实践 第8章 面向对象与uml语言_第4页
软件工程与实践 第8章 面向对象与uml语言_第5页
资源描述:

《软件工程与实践 第8章 面向对象与uml语言》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第8章面向对象与uml语言8.1传统方法学传统的生命周期方法学主要存在以下问题:(1)生产率提高的幅度远不能满足需要;(2)软件重用度很低;(3)软件仍然很难维护;(4)软件往往不能满足用户需要。面向对象的方法学可以用下列式子来概括:面向对象=对象+类+继承+消息通信。面向对象方法学的主要优点是:(1)从应用设计到解决问题的方案更加抽象化而且具有极强的对应性。(2)在设计中容易与用户沟通。(3)把数据和操作封装到对象之中。(4)设计中产生各式各样的部件,然后由部件组成框架,以至于整个程序。(5)应用程序具有较好的重用性、

2、易改进、易维护和易扩充。8.2面向对象方法的基本概念对象是具有相同状态的一组操作的集合,是封装了数据结构及可以施加在这些数据结构上的操作的封装体,这个封装体有可以惟一地标识它的名字,而且向外界提供一组服务(即公有的操作)。对象中的数据表示对象的状态,一个对象的状态只能由该对象的操作来改变,只能由其他对象向该对象发送消息。对象响应消息时,按照消息模式找出与之匹配的方法,并执行该方法。8.2.1对象在面向对象的软件技术中,”类”就是对具有相同数据和相同操作的一组相似对象的定义,也就是说,类是对具有相同属性和行为的一个或多个对

3、象的描述。例如:植物,飞行器,人等都是类。“人”这个类具有:身高、姓名、性别、年龄、家庭住址等属性(静态特征);另外,“人”这个类还具有:跑步,开车,吃饭,思考等行为(动态特征)。8.2.2类实例就是由某个特定的类所描述的一个具体的对象。当使用”对象”这个术语时,既可以指一个具体的对象,也可以泛指一般的对象,但是,当使用”实例”这个术语时,必然是指一个具体的对象。8.2.3实例消息就是要求某个对象执行在定义它的那个类中的某个操作的规格说明。通常,一个消息由下述3部分组成:接收消息的对象;消息选择符(也称为消息名);零个或

4、多个变元。8.2.4消息方法就是对象所能执行的操作,也就是类中所定义的服务。方法描述了对象执行操作的算法、响应消息的方法。在C++语言中把方法称为成员函数。我们前面介绍过,类由属性(静态数据)和行为(操作)组成,实际上,这里的“行为”就是面向对象中讲到的“方法”。例如:(1)飞行器这个类的方法有:飞行,落地等一些操作。(2)“人”这个类的方法:跑步,开车,吃饭,思考等。8.2.5方法8.2.6属性属性就是类中所定义的数据,它是对客观世界实体所具有的性质的抽象。类的每个实例都有自己特有的属性值。在C++语言中把属性称为数据

5、成员。例如:飞行器这个类的属性有:颜色,身长,形状等。8.2.6继承继承是子类自动地共享父类中定义的数据和方法的机制。一个类的上层可以有父类,下层可以有子类。这种层次结构系统的一个重要性质是继承性,一个类直接继承其父类的全部描述(数据和操作)。继承具有传递性。例如:飞机是飞行器的子类,它继承了飞行器的所有属性和方法,但是它还有自己的属性和方法。飞机的属性除具有飞行器属性外,还有:乘客容量。8.2.7多态性在面向对象的软件技术中,多态性是指子类对象可以像父类对象那样使用,同样的消息既可以发送给父类对象也可以发送给子类对象。

6、然而不同层次中的每个类却各自按自己的需要来实现这个行为。当对象接收到发送给它的消息时,根据该对象所属于的类动态选用在该类中定义的实现算法。8.2.8重载重载有两种:函数重载和运算符重载。函数重载是指在同一作用域内的若干个参数特征不同的函数可以使用相同的函数名字;运算符重载是指同一个运算符可以施加于不同类型的操作数上。8.3 UML建模语言UML(统一建模语言)是面向对象建模语言的标准,它可以对任何具有静态结构和动态行为的系统进行建模,它的主要作用是帮助用户进行面向的描述和建模,它可以描述软件从需求分析到软件实现和测试的全

7、过程。作为一种建模语言,UML的定义包括UML语义和UML表示法两个部分。(1)UML语义(2)UML表示法(1)模型帮助我们按照实际情况或按照我们所需要的样式对系统进行可视化。(2)模型允许我们详细说明系统的结构和行为。(3)模型给出一个知道我们构造系统的模板。(4)模型对我们的决策进行文档化。8.3.1为什么要建模UML有两套建模机制:静态建模机制和动态建模机制。静可描形,动可描行。动和静是辩证的两面,在UML中,静态建模可以描述系统的组织和结构,而动态建模则可描述系统的行为和动作。静态建模机制包括用例图、类图、对象

8、图、包、组件图和配置图。动态建模机制包括消息、状态图、时序图、协作图和活动图。8.3.2UML建模机制(1)UML基本构造元素:事务、关系和图。(2)UML的事务有四种:结构事务、行为事务、分组事务和注释事务。(3)UML的关系有四种:依赖、关联、泛化、实现。(4)UML的图有十种:用例图、类图、对象图、包图、状态图

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。