- 1、本文档共44页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第1章 面向对象软件开发概述 1.1 面向对象问题求解的提出 1.2 面向对象问题求解概述 1.3 对象、类与实体 1.4 对象的属性与相互关系 1.5 面向对象的软件开发过程 1.6 面向对象程序设计方法的优点 1.7 小结 1.1 面向对象问题求解的提出 早期计算机中运行的程序大都是为特定的硬件系统专门设计的,称为面向机器的程序。这类程序的运行速度和效率都很高,但是可读性和可移植性很差,随着软件开发规模的扩大,这类面向机器的程序逐渐被以FORTRAN、C等为代表的面向过程的程序所取代。 面向过程的程序遵循面向过程的问题求解方法。其中心思想是用计算机能够理解的逻辑来描述和表达待解决的问题及其具体的解决过程。 数据结构、算法是面向过程问题求解的核心组成。其中数据结构利用计算机的离散逻辑来量化表达需要解决的问题,而算法则研究如何快捷、高效地组织解决问题的具体过程。 面向过程的问题求解可以精确、完备地描述具体的求解过程(这里的过程通常是指操作),但却不足以把一个包含了多个相互关联的过程的复杂系统表述清楚, 而面向对象的问题求解则可以胜任这件工作。面向对象问题求解关心的不仅仅是孤立的单个过程,而是孕育所有这些过程的母体系统,它能够使计算机逻辑来模拟描述系统本身,包括系统的组成,系统的各种可能状态,以及系统中可能产生的各种过程与过程引起的系统状态切换。 1. Simula I,它首次提出模拟人类的思维方法,把数据和相关的操作集成在一起的思想。 2. Smalltalk80 3. 产生了Lisp、Clascal、Object Pascal、C++等多种面向对象的语言,这中间最有影响,也是对面向对象技术的普及推动最大的当属C++。 4. Java是90年代新出现的面向对象的编程语言。 1.2 面向对象问题求解概述 不同于面向过程的程序设计中以具体的解题过程为研究和实现的主体,面向对象的程序设计是以需解决的问题中所涉及到的各种对象为主要矛盾。 “对象”是现实世界的实体或概念在计算机逻辑中的抽象表示。 对象是具有唯一对象名和固定对外接口的一组属性和操作的集合,用来模拟组成或影响现实世界问题的一个或一组因素。 (1) 对象的数据封装特性彻底消除了传统结构方法中数据与操作分离所带来的种种问题,提高了程序的可复用性和可维护性,降低了程序员保持数据与操作相容的负担。 (2) 对象的数据封装特性还可以把对象的私有数据和公共数据分离开,保护了私有数据,减少了可能的模块间干扰,达到降低程序复杂性、提高可控性的目的。 (3) 对象作为独立的整体具有良好的自恰性,即它可以通过自身定义的操作来管理自己。 (4) 在具有自恰性的同时,对象通过一定的接口和相应的消息机制与外界相联系。 (5) 继承是面向对象方法中除封装外的另一个重要特性,通过继承可以很方便地实现应用的扩展和已有代码的重复使用,在保证质量的前提下提高了开发效率。 面向对象程序设计是将数据及数据的操作封装在一起,成为一个不可分割的整体,同时将具有相同特征的对象抽象成为一种新的数据类型——类。通过对象间的消息传递使整个系统运转。通过对象类的继承提供代码重用的有效途径。 1.3 对象、类与实体 不同于面向过程的程序设计中以具体的解题过程为研究和实现的主体,面向对象的程序设计是以需解决的问题中所涉及到的各种对象为主要矛盾。 更确切地,面向对象技术中的对象就是现实世界中某个具体的物理实体在计算机逻辑中的映射和体现。 类:是同种对象的集合与抽象,是一种抽象的数据类型,它是所有具有一定共性的对象的抽象,而属于类的某一个对象则被称为是类的一个实例,是类的一次实例化的结果。 图1.1 对象、实体与类 1.4 对象的属性与相互关系 1.4.1 对象的属性 状态和行为是对象的主要属性。 状态:又称为对象的静态属性,主要指对象内部所包含的各种信息,也就是变量。 行为:对象的操作,表述对象的动态属性,通过行为设置或改变对象状态。 图1.2 对象的属性 “对象”是现实世界的实体或概念在计算机逻辑中的抽象表示。最主要的特点是以数据为中心,它是一个集成了数据和其上操作的独立、自恰的逻辑单位。 1.4.2 对象的关系 一个复杂的系统必然包括多个对象,这些对象间可能存在的关系有三种:包含、继承和关联。 1. 包含 当对象A是对象B的属性时,称对象B包含对象A。 当一个对象包含另一个对象时,它将在自己的内存空间中为这个被包含对象留出专门的空间,即被包含对象将被保存在包含它的对象内部。 2. 继承 当对象A是对象B的特例时,称对象A继承了对象B。 实际上,这里所说的对象间的继承
您可能关注的文档
最近下载
- 2023年招商银行高级管理人员招聘高频笔试、历年难易点考题(共500题含答案解析)模拟试卷.docx
- 创新创业基础智慧树知到答案章节测试2023年.pdf
- 班组专业化的建立和发展.pptx
- 2024六年级英语上册 Module 2 Unit 2 There are lots of beautiful lakes in China说课稿 外研版(三起).docx
- 新职业英语1酒店英语--Unit-2.ppt VIP
- 招商银行笔试考试题库及答案.pdf
- 河北省公共基础知识真题及答案.docx
- 2023药物政策相关知识考试试题及答案.pdf VIP
- 关于进一步规范我院自学考试助学管理的办法(试行).doc
- 二级医院岗位职责.docx VIP
文档评论(0)