软件工程课件第6章面向对象的概念与模型结构化实现Da

软件工程课件第6章面向对象的概念与模型结构化实现Da

ID:46976279

大小:278.66 KB

页数:19页

时间:2019-12-02

软件工程课件第6章面向对象的概念与模型结构化实现Da_第1页
软件工程课件第6章面向对象的概念与模型结构化实现Da_第2页
软件工程课件第6章面向对象的概念与模型结构化实现Da_第3页
软件工程课件第6章面向对象的概念与模型结构化实现Da_第4页
软件工程课件第6章面向对象的概念与模型结构化实现Da_第5页
资源描述:

《软件工程课件第6章面向对象的概念与模型结构化实现Da》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第三篇面向对象方法学第6章面向对象的概念与模型结构化实现6.1面向对象程序设计实例略6.2面向对象方法学概述6.2.1面向对象方法学的要点概括地说,面向对象方法具有下述4个要点。(1)认为客观世界是由各种对象组成的,任何事物都是对象,复杂的对象可以由比较简单的对象以某种方式组合而成。面向对象方法用对象分解取代了传统方法的功能分解。(2)把所有对象都划分成各种对象类(简称为类,Class),每个对象类都定义了一组数据和一组方法。数据用于表示对象的静态属性,是对象的状态信息。因此,每当建立该对象类的一个新实例时,就按照类中数据的定义为这个新对象生成一组专用的数据,以便描述

2、该对象(3)按照子类与父类的关系,把若干个对象组成一个层次结构的系统。(4)对象彼此之间只能通过传递消息互相联系。26.2.2面向对象的软件过程一般说来,使用面向对象方法学开发软件时,工作重点应该放在生命周期中的分析阶段。这种方法在开发的早期阶段定义了一系列面向问题的对象,并且在整个开发过程中不断充实和扩充这些对象。迭代是软件开发过程中普遍存在的一种内在属性。经验表明,软件过程各个阶段之间的迭代或一个阶段内各个工作步骤之间的迭代,在面向对象范型中比在结构化范型中更常见,也更容易实现。喷泉模型是典型的面向对象生命周期模型。36.3面向对象方法学的主要优点1.与人类习惯的思

3、维方法一致对象是对现实世界实体的正确抽象,它是由描述内部状态表示静态属性的数据,以及可以对这些数据施加的操作(表示对象的动态行为),封装在一起所构成的统一体。对象之间通过传递消息互相联系,以模拟现实世界中不同事物彼此之间的联系。2.稳定性好因为面向对象的软件系统的结构是根据问题领域的模型建立起来的,而不是基于对系统应完成的功能的分解,所以,当对系统的功能需求变化时并不会引起软件结构的整体变化,往往仅需要作一些局部性的修改。3.可重用性好继承性机制使得子类不仅可以重用其父类的数据结构和程序代码,而且可以在父类代码的基础上方便地修改和扩充,这种修改并不影响对原有类的使用

4、。44.较易开发大型软件产品用面向对象范型开发软件时,可以把一个大型产品看作是一系列本质上相互独立的小产品来处理,这就不仅降低了开发的技术难度,而且也使得对开发工作的管理变得容易多了。5.可维护性好·面向对象的软件稳定性比较好。·面向对象的软件比较容易修改。·面向对象的软件比较容易理解。·易于测试和调试。56.4面向对象的概念6.4.1对象在应用领域中有意义的、与所要解决的问题有关系的任何事物都可以作为对象(Object),它既可以是具体的物理实体的抽象,也可以是人为的概念,或者是任何有明确边界和意义的东西。对象是封装了数据结构及可以施加在这些数据结构上的操作的封装

5、体,这个封装体有可以唯一地标识它的名字,而且向外界提供一组服务(即公有的操作)。对象中的数据表示对象的状态,一个对象的状态只能由该对象的操作来改变。每当需要改变对象的状态时,只能由其他对象向该对象发送消息。对象响应消息时,按照消息模式找出与之匹配的方法,并执行该方法。66.4.2其他概念1.类(Class)在面向对象的软件技术中,“类”就是对具有相同数据和相同操作的一组相似对象的定义。也就是说,类是对具有相同属性和行为的一个或多个对象的描述,通常在这种描述中也包括对怎样创建该类的新对象的说明。2.实例(Instance)实例就是由某个特定的类所描述的一个具体的对象。

6、3.消息(Message)消息,就是要求某个对象执行在定义它的那个类中所定义的某个操作的规格说明。通常,一个消息由下述三部分组成:·接收消息的对象;·消息选择符(也称为消息名);·零个或多个变元。76.4.2其他概念4.方法(Method)方法,就是对象所能执行的操作,也就是类中所定义的服务。方法描述了对象执行操作的算法,响应消息的方法。5.属性(Attribute)属性,就是类中所定义的数据,它是对客观世界实体所具有的性质的抽象。类的每个实例都有自己特有的属性值。6.封装(Encapsulation)从字面上理解,所谓封装就是把某个事物包起来,使外界

7、不知道该事物的具体内容。封装性也就是信息隐藏,通过封装把对象的实现细节对外界隐藏起来了。86.4.2其他概念7.继承(Inheritance)在面向对象的软件技术中,继承是子类自动地共享基类中定义的数据和方法的机制。当一个类只允许有一个父类时,也就是说,当类等级为树形结构时,类的继承是单继承;当允许一个类有多个父类时,类的继承是多重继承。8.多态性(Polymorphism)在类等级的不同层次中可以共享(公用)一个行为(方法)的名字,然而不同层次中的每个类却各自按自己的需要来实现这个行为。当对象接收到发送给它的消息时,根据该对象所属

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

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

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