面向对象技术及UML教程第1章 面向对象技术概述

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1.1 面向对象方法学 1.1.1 面向对象方法学概述
程序设计的目的是设计出可以使用的软件系统。 为了设计出高质量的软件系统就需要研究程序设 计中涉及的基本概念、描述工具和所采用的方法。 至今为止,常见的有结构化程序设计方法和面向 对象程序设计方法。
1.1 面向对象方法学 随着高级语言的出现人们希望计算机可以完成更复 杂的工作,这就要求编写规模更大、复杂度更高的 软件。随着软件复杂程度的提高,软件的开发和维 护费用也不断地在提高,人们需要更加有效的软件 开发方法,因此提出了结构化程序设计方法的概念 结构化程序设计方法主要特点是:自顶向下、逐步 求精;模块化;语句结构化。简单地说,利用结构 化程序设计方法实现程序设计需要经过两个基本过 程:分解和组装。
1.1 面向对象方法学 1.1.2 面向对象方法学的基本特征 面向对象程序设计的基本特征包括了封装性、继 承性和多态性,对象之间是通过消息相互作用的。 1.抽象 抽象是解决实际问题经常采用的策略,也是人类 认识世界的本能方式。所谓抽象是指从许多事物 中,舍弃个别的、非本质的属性,抽取出共同的、 本质的属性的过程,它是形成概念的必要手段。
1.1 面向对象方法学
在面向对象的程序设计中,封装是指将对象的属 性和行为分别用数据结构和方法描述,并将它们 绑定在一起形成一个可供访问的基本逻辑单元。 用户对数据结构的访问ห้องสมุดไป่ตู้能通过提供的方法实施。 封装是实现数据隐藏的有效手段,是一种很好的 管理数据与操作行为的机制,它可以保证数据结 构的安全性,提高了应用系统的可维护性和可移 植性。
1.1 面向对象方法学 2.封装 封装是指将现实世界中某个事物的属性与行为聚 集在一个逻辑单元内部的机制。封装指将对象属 性和操作结合在一起,构成一个独立的对象。它 的内部信息是隐藏的,不允许外界直接存取对象 的属性,而只能通过指定的接口与对象联系。
实际上,封装并不是新的概念,在日常生活中, 处处可以看到封装机制的应用。例如,一台日常 的电视机 。
1.1 面向对象方法学 5.多态 当对象收到消息时要予以响应,不同的类对象收 到同一个消息可以产生完全不同的响应效果,这 种现象叫做多态。利用多态机制,用户可以发送 一个通用的消息,而实现的细节由接收对象自行 决定,这样,同一个消息可能会导致调用不同的 方法。 在面向对象程序设计中,多态性依托于继承性。 利用类的继承机制可以形成一个类的层次结构, 把具有通用功能的消息放在较高层次,而具体的 实现放在较低层次,在这些较低层次上生成的对 象能够对通用消息作出不同的响应。
1.1 面向对象方法学 4.继承 继承是类之间的一种常见关系。这种关系为共享 数据和操作提供了一种良好的机制。通过继承, 一个类的定义可以基于另外一个已经存在的类, 分别将它们称为“子类”和“父类”,“父类” 又称为“基类”。子类可以继承父类的全部内容, 并在此基础上,对父类表述的内容加以扩展或覆 盖。 根据继承关系的特性,继承分为两种主要形式: 直接继承和间接继承 单继承和多继承
1.1 面向对象方法学 3.消息 消息是指对象之间在交互中所传递的通信信息。 简单地说,消息是一个对象要求另一个对象实施 某项操作的请求。在一条消息中,需要包含消息 的接收者和要求接收者执行哪项操作的请求,但 并没有说明应该怎样做。具体的操作过程由接收 者自行决定,这样可以很好地保证系统的封装性。 消息传递是对象之间相互联系的惟一途径。发送 者发送消息,接收者接收该消息,并通过调用相 应的方法响应该消息。
1.1 面向对象方法学
数据抽象是一种更高级别的抽象方法。它将现实 世界中存在的事物作为抽象单元,其抽象内容既 包括事物的属性特征,也包括行为特征。数据抽 象是面向对象程序设计所采用的核心方法,通过 数据抽象得到了现实世界的一个一个的事物,这 些事物就是一个一个的对象。
例如现实世界中一个学校有许多学生,在抽象过 程中每个学生可以用学号、姓名、性别、年龄、 家庭住址等信息进行描述;同时每个学生还可以 有注册学籍、选修课程等行为。
1.1 面向对象方法学
1.1 面向对象方法学 随着软件规模的进一步增加,结构化的程序设计方 法的弱点也就暴露出来了,结构化程序设计方法分 析问题主要是从计算机实现的角度来考虑问题,面 对复杂问题时,不利于理清问题本身。因此对问题 的抽象程度比较低,程序的重用性和扩展性比较低。 在这种情况下面向对象程序设计方法应运而生。 面向对象程序设计方法包括面向对象分析、面向对 象设计和使用面向对象程序设计语言的实现,还可 以包括面向对象的测试。采用面向对象方法进行分 析时,所分析的问题都使用对象来描述,对象之间 通过消息进行联系。
面向对象技术及UML教程
第1章 面向对象技术概述
第1章 面向对象技术概述
面向对象(Object-Oriented)不仅是一些具体的软 件开发技术与策略,而是一整套关于如何看待软件 系统与现实世界的关系,用什么观点来研究问题并 进行求解,以及如何进行系统构造的软件方法学。 本章主要先来了解一下面向对象技术的基本知识和 基本概念,为后面介绍面向对象分析和设计建模语 言UML做好铺垫。面向对象程序设计方法已经被大 家广泛接受,成为当前最流行的程序设计方法。
把这种思想应用到软件开发上,开发人员可以把需 要解决的问题看成是多个独立的,同时又相互联系 的对象组成的一个系统,这样有助于开发人员更深 入地理解问题本身。 什么是面向对象程序设计语言呢?主要看这个语言 定义的类型是否都支持对象的声明,以及这个语言 对对象的封装、继承和多态的支持程度,不同的语 言面向对象的程度不同 。
1.1 面向对象方法学
什么是面向对象呢?这里从二个层次来介绍这个概 念:第一个层次就是面向对象思想;第二个层次是 面向对象程序设计语言。
严格意义上说,面向对象思想与程序设计无关,它 是人们对自然世界的一种认识,把世界中的所有事 物都看作是对象,每个对象既是独立的,同时这些 对象又是相互联系的。
1.1 面向对象方法学
相关文档
最新文档