《【教学课件】第2章面向对象编程思路.ppt》由会员分享,可在线阅读,更多相关《【教学课件】第2章面向对象编程思路.ppt(85页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社第2章 面向对象编程思路 学习目标 本章要点上机练习 习 题电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社学习目标 本章首先介绍编程思路的发展过程,介绍面向过程的程序开发与面向对象的程序开发的概念及两者的比较,得出面向对象程序设计的优点。从对象的属性和关系两个方面,讲解对象的概念,最后,介绍Java面向对象的开发过程。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社学习目标通过本章的学习让用户充分理解面向对象的思想,为以后编写更好的Java应用程序做好准备。电脑基础实例上机系列丛书Java程序设计教程 清华大
2、学出版社本章要点 面向对象程序设计的概念面向过程与面向对象的比较对象的属性与关系Java面向对象的分析、设计与实现过程电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社面向过程与面向对象 编程思路的发展主要经历了两个重要阶段:即面向过程和面向对象。下面主要介绍编程思路的发展过程,以及面向对象程序设计与面向过程程序设计相比较所体现出的优点。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社面向过程与面向对象编程思路的发展 面向对象程序设计的优点 电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社编程思路的发展早期电脑中运行的程序大都是为特定的硬件系统专门设计的,称为
3、面向机器的程序。汇编语言被发明出来以后,可以用符号表示那些机器指令,从而可以编写更长、更复杂的程序。当程序规模继续不停增长的时候,高级语言被引入,为开发人员们提供了更多工具以应付日益增加的程序复杂性。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社编程思路的发展结构化程序设计语言使得编写较复杂的程序变得容易。但是,一旦某个项目达到一定规模,即便使用结构化程序设计的方法,局势仍将变得不可控制。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社编程思路的发展面向对象程序设计可以弥补面向过程程序设计方法中的一些缺点。面向对象程序设计把数据看作程序开发中的基本元素,不允许它们在系
4、统中自由流动,将数据和操作这些数据的函数紧密连结在一起,并保护数据不被外界函数任意改变。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社编程思路的发展面向对象程序设计将问题分解为一系列实体这些实体被称为对象(object),然后围绕这些实体建立数据和函数。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社面向对象程序设计的优点 与传统方法相比,面向对象的问题求解具有更好的可重用性、可扩展性和可管理性。本节将简要介绍使用面向对象的程序设计方法的优点和适用场合。可重用性 可扩展性 可管理性 电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社可重用性可重用性是面向对象
5、程序设计的一个核心思路,其开发特点都或多或少地围绕着可重用性这个核心并为之服务。目前,应用软件是由模块组成的,可重用性就是指一个软件项目中所开发的模块,能够在这个项目中试用,还可以重复地试用在其他项目中,从而在多个不同的系统中发挥作用。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社可重用性采用可重用模块来构建程序,其优点是显而易见的,主要有如下几点。提高开发效率,缩短开发周期,降低开发成本。在项目开发初期开发一些公用模块就是要发挥这种优势。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社可重用性采用已经被证明为正确、优先的模块,不仅程序质量能够得到保证,而且维护工作量
6、也相应减少。提高程序的标准化程度,符合现代大规模软件开发的需求。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社可重用性正是由于面向对象程序设计具有可重用性,使它能适应不断扩大、复杂性增加和标准化程度日益提高的现代应用软件开发的规模要求,因此逐渐成为开发人员承认、依赖和喜爱的主流开发技术。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社可扩展性 可扩展性是现代应用软件提出的又一个重要要求,即要求应用软件能够方便、容易的进行扩展和修改。这种扩充和修改的范围不但涉及到软件的内容,也涉及到软件的形式和工作机制。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社可扩展
7、性面向对象程序设计的可扩展性主要体现在如下的几个方面。1)特别适合快速原形软件开发快速原型法是研究软件生命周期的研究人员提出的一种开发方法,相对于传统的瀑布式的开发方法,它在某些程度上来说更加灵活和实用。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社快速原型法电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社可扩展性面向对象程序设计方法通过这种先搭框架,再填入内容的快速原型法的开发思路是非常合适的,因为面向对象程序的基本和主要组成部分是类,就是抽象出现实体的主要性质而形成的模块结构。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社可扩展性在开发过程的初期,类
8、里面仅包含一些最基本的属性和操作,完成一些最基本的功能。随着开发的深入,再逐步向类里加入复杂的属性,并派生子类和定义更复杂的关系,这就形成快速原型的开发思路,也就是面向对象程序设计的常用方法。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社可扩展性2)系统的维护更加简单和容易面向对象程序设计过程中,开发人员只需在原来系统框架的基础上对类进行扩充和修改,这样维护工作和开销自然大大减少,这是面向对象方法相对于传统方法的一个优点。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社可扩展性3)有效支持模块化技术模块化是软件设计和程序开发过程中经常使用、非常有效的一种方法。采用模块
9、可以将大的任务划分为较小的单元,交给不同的开发人员各个开发、并行完成,同时模块可以将模块内部的实现过程隐蔽起来,避免干扰。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社可管理性 面向过程开发方式是以过程或函数为基本单元来构建整个系统,当项目的规模变大时,需要的过程和函数数量成倍增多,不利于管理和控制。而面向对象程序设计采用内涵比过程和函数更丰富、更复杂的类作为构建系统的部件,整个项目的组织将更加合理和方便。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社可管理性 另外,在面向对象程序设计中,数据和操作封装在一起,使得只有该类的有限个方法才可以操作这些数据。电脑基础实例
10、上机系列丛书Java程序设计教程 清华大学出版社对 象 入 门 通过前面的介绍,对面向对象程序设计有一个初步了解,下面将详细地介绍面向对象的核心概念对象做详细的介绍。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社对 象 入 门对象是面向对象程序设计的核心,以面向对象的观点来看,所有的面向对象程序都是由对象来组成的,这些对象是独立的,同时它们还可以互相通信、协调和配合,从而共同完成整个程序的任务和功能。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社对 象 入 门包含对象的结构称为类,类是同种对象的集合与抽象。这些实体在面向对象程序中被映射成不同的对象。这些代表不同鸟类
11、的实体之间存在着许多实质性的共同点。因此,为了处理问题的方便,在面向对象的程序设计中,定义了类的概念来表述这些同种对象的公共属性与特点。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社对 象 入 门面向对象程序设计中类和对象的这种关系在现实中也很容易理解,如果类是一个抽象的概念,那么对象就是某一种具体的鸟。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社对象、实体和类电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社对 象 入 门图“对象、实体和类”表示了对象、实体和类的相互关系,以及面向对象的问题求解的思维方式。在用面向对象的软件方法解决现实世界的问题时的操
12、作步骤如下:电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社对 象 入 门(1)将物理存在的实体抽象成概念世界的抽象数据类型,这个抽象数据类型包括了实体中与需要解决的问题相关的数据和属性。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社对 象 入 门(2)再用面向对象的工具,比如Java语言,将这个抽象数据类型用计算机逻辑表达出来,即构造电脑能够理解和处理的类。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社对 象 入 门(3)将类实例化,得到现实世界实体和面向对象的映射对象,在程序中对对象进行操作,就可以模拟现实世界中实体上的问题并将其解决。电脑基础实例上
13、机系列丛书Java程序设计教程 清华大学出版社对 象 入 门实质上,面向对象程序设计的关键思想就是要让计算机逻辑来模拟现实世界的物理存在,即让电脑世界向现实世界靠近。这一点与传统的程序设计中把现实世界的问题抽象成电脑可以理解和处理的数据结构的思路,即让现实世界向世界靠近的思路是完全相反。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社对 象 入 门面向对象程序设计提出的这种新的解决问题的思路,更接近于人类自然的思维模式,更接近于现实问题本来面目,这样,无论是当时的面向对象程序设计实现本身,还是日后的维护、修改和扩充,都可以在已有工作的基础之上比较顺利、容易地完成,避免用面向过程方法
14、实现时需要面对的种种困难。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社对象的属性 每个对象都具有两种基本属性:状态和行为。还可以分别描述该对象所包含的信息和操作。对象的状态 对象的行为 电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社对象的状态对象的状态又称为对象的静态属性,主要指对象内部所包含的各种信息,也就是变量。每个对象个体都具有自己专有的内部变量,这些变量的值标明了对象所处的状态。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社对象的状态当对象经过某种操作和行为而发生状态改变时,具体地就体现为属性变量内容的改变。通过检查对象属性变量的内容,就可以
15、了解这个对象当前所处于的状态。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社对象的行为行为是对象的第二种属性,又称为对象的操作。它主要表述对象的动态属性,操作的作用是设置或改变对象的状态。对象的操作一般都基于对象内部的变量,并试图改变这些变量。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社对象的行为如“飞翔”的操作只对没有处于飞行状态的鸟才有效,而执行了“飞翔”操作之后,鸟原有的未飞行的状态将改变。对象的状态在电脑内部是用变量来表示,而对象的行为在电脑内部是用方法来表示的。方法实际上类似于面向过程中的函数,对象的行为或操作定义在其方法的内部。电脑基础实例上机系列丛书
16、Java程序设计教程 清华大学出版社对象的属性电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社对象的行为从“对象的属性”图可以看出,对象的方法一方面把对象的内部变量包裹、封装和保护起来,使得只有对象自己的方法才能操作这些内部变量;另一方面,对象的方法还是对象与外部环境、其他对象等进行交互通信的接口,对象的外部环境和其他对象可以通过这个接口来调用对象,操纵对象的行为和改变对象的状态。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社对象的行为在面向对象的方法学中,“对象”是现实世界的实体或概念在电脑逻辑中的抽象表示。具体地,对象是具有惟一对象名和固定对外接口的一组属性和操作
17、的集合,是用来模拟组成或影响现实世界问题的一个或一组因素。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社对象的行为对象最主要的特点是以数据为中心,它是一个集成了数据和操作的独立逻辑单位。面向对象的问题求解就是力图从实际问题中抽象出这些封装了数据和操作的对象,通过定义属性变量和操作来表述它们的特征和功能,通过定义接口来描述它们的地位及与其他对象的关系,最终形成一个广泛联系的可理解、可扩充、可维护、更接近于问题本来面目的动态对象模型系统。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社对象的关系 一个复杂的系统必然包括多个对象,这些对象之间可能存在关系有三种:包含、继承和
18、关联。包含继承关联电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社包含当对象A是对象B的属性时,称对象B包含对象A。当一个对象包含另一个对象时,它将在自己的内存空间中为这个被包含对象留出专门的空间,即被包含对象将被保存在包含它的对象的内部,就像显示器被包含在电脑之中一样,这与它是电脑组成部分的地位是非常吻合的。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社继承当对象A是对象B的特例时,称对象A继承了对象B。实际上,这里所说的对象间的继承关系就是后面要详细介绍的类间的继承关系。作为特例的类称为子类,而子类所继承的类称为父类。父类是子类公共关系的集合,子类将在父类定义的公
19、共属性的基础上,根据自己的特殊性定义自己的属性。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社关联当对象A的引用是对象B的属性时,称对象A和对象B之间是关联关系。所谓对象的引用是指对象的名称、地址和句柄等可以获取或操纵该对象的途径。相对于对象本身,对象的引用所占用的内存空间要少得多,它只是找到对象的一条线索。通过它,程序可以找到真正的对象,并访问这个对象的数据,调用这个对象的方法。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社Java面向对象的开发过程 面向对象的软件开发过程可以大体划分为面向对象的分析(object oriented analysis,OOA)、面
20、向对象的设计(object oriented design,OOD)、面向对象的实现(object oriented programming,OOP)3个阶段。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社Java面向对象的开发过程面向对象的分析 面向对象的设计 面向对象的实现 电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社面向对象的分析面向对象的分析的主要作用是明确用户的需求,并用标准化的面向对象的模型来规范地表述这一需求,最后形成面向对象的分析模型,即OOA模型。分析阶段的工作应该由用户和开发人员共同协作完成。电脑基础实例上机系列丛书Java程序设计教程 清华大
21、学出版社面向对象的分析面向对象的分析首先应该明确用户的需求,包括对用户需求的全面理解分析和筛选,明确所要开发的软件系统的职责界限,并进行各种可行性研究和制订资源、进度预算等。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社面向对象的分析然后,将这些需求以标准化模型的形式规范地表述出来,即将用户和开发人员头脑中形成的需求以准确的文字、图表等形式表述出来,形成双方都认可的文件。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社面向对象的分析在传统的面向过程的开发方法中,这个步骤较多是借助于结构化分析方法中的数据流图和数据字典等工具来完成的,这种分析方法可以帮助开发人员了解和掌
22、握系统中数据流的运动情况,对软件系统的各种工作状态和这些状态之间的切换有清晰的认识和控制。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社面向对象的分析为后期工作的顺利完成铺平道路。但是这种分析方法过于烦琐,不够灵活,一旦因某种原因需要改变需求时,很多原有的工作不能得到继承,从而造成各方面资源的浪费。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社面向对象的分析面向对象的软件开发过程所采用的需求分析方法虽然不止一种,但是作用却是相同的,都是要抽取存在于用户需求中的各对象实体,分析、明确这些对象实体的静态数据属性、动态操作属性以及它们之间的相互关系,更重要的是,要能够反映
23、出由多个对象组成的系统的整体功能和状态,包括各种状态间的变迁、对象在这些变迁中的作用和在整个系统中的位置等。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社面向对象的分析需求模型化方法是面向对象的分析中常用的方法,这种方法通过对需要解决的实际问题建立模型来抽取、描述对象实体,最后形成OOA模型,将用户的需求准确地表达出来。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社面向对象的分析OOA模型有很多种设计和表达方法,这里将介绍使用较为广泛的Coad&Yourdo的OOA模型。这种OOA模型包含5个层次,每个层次描述需求模型的一个方面。对象-类层 静态属性层 电脑基础实例
24、上机系列丛书Java程序设计教程 清华大学出版社面向对象的分析服务层结构层 主题层 电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社对象-类层这个层次将捕捉要开发的应用软件所对应的各个现实世界的实体,并从中抽象出对象和类。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社对象-类层这里需要注意,并不是每一个现实世界的实体都会在模型中对应一个对象,这是因为模型将只为需要解决的问题服务,对于问题领域之外的实体将不予涉及;另一方面,也不是任何一个对象-类层次中的类都对应着现实世界中的一个或多个实体。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社静态属性静态属性层针
25、对对象-类层中抽取出来的各个类和对象,设计出其静态属性和它们之间的约束关系。状态是类或对象所包含的各种状态信息,实例连接则体现了对象之间因特定的事物规则和限定条件而存在的约束关系。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社服务层服务层定义了对象和类的动态属性以及对象之间的消息通信。对象和类的动态属性就是它们的行为或方法,它规定了对象和类的作用和功能,当对象在执行这些功能时,它们之间将引发消息通信。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社结构层结构层将定义系统中所有对象和类之间的层次结构关系。如前所述,对象间有包含、继承和关联3种关系,其中包含和继承属于结构
26、层需要表达的层次结构关系。继承将在对象间建立“一般特殊”的结构关系,包含将在对象间建立“整体部分”的结构关系。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社主题层当面临的系统非常复杂、庞大时,将它拆解为若干个相对独立的子系统就变得非常必要了。主题层将定义若干个主题,把有关的对象分别划归不同的主题,每个主题成为一个子系统。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社主题层设计完上述5个层次,就得到了完整的OOA模型。需要指出的是,OOA模型的严格定义和具体抽取方法都比较复杂,这里就不详细介绍了,感兴趣的读者可以参考相关的资料。电脑基础实例上机系列丛书Java程序设计
27、教程 清华大学出版社面向对象的设计 如果说分析阶段应该明确所要开发的软件系统“干什么”,那么设计阶段将明确这个软件系统“怎么做”。面向对象的设计将对OOA模型加以扩展,并得到面向对象的设计阶段的最终结果:OOD模型。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社面向对象的设计面向对象的设计将在OOA模型的基础上引入界面管理、任务管理和数据管理3部分的内容,进一步扩充OOA模型。界面管理:负责整个系统的人机界面的设计。任务管理:负责处理并行操作之类的系统资源管理功能的工作。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社面向对象的设计数据管理:则负责设计系统与数据库的接
28、口。这3部分再加上OOA模型代表的“问题逻辑”部分,就构成了最初的OOD模型。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社面向对象的设计将OOD模型划分为问题逻辑、界面管理、任务管理和数据管理4个部分,其优点是实现了技术上的透明性,即一个部分的具体技术细节与实现方法相对于所有其他部分是不可见的,从而使系统的可重用性大大提高。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社面向对象的设计面向对象的设计还需要对最初的OOD模型做进一步的细化分析、设计和验证。在“问题逻辑”部分,细化设计包括对类静态数据属性的确定,对类方法(即操作)的参数、返回值、功能和功能的实现的明确规
29、定等;电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社面向对象的设计细化验证主要指对各对象类公式间的相容性和一致性的验证,对各个类、类内成员的访问权限的严格合理性的验证,也包括验证对象类的功能是否符合用户的需求。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社面向对象的实现 面向对象的实现就是具体的编码阶段,其主要任务包括如下几方面。选择一种合适的面向对象的编程语言,如C+、Object Pascal和Java等。用选择的语言编码实现详细设计步骤所需的公式、图表、说明和规则等对软件系统各对象类的详尽描述。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社面向对
30、象的实现根据类的相互关系集成编写好的各个类代码模块。利用开发人员提供的测试样例和用户提供的测试样例分别检验编码完成的各个模块和整个软件系统。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社面向对象的实现实现阶段完成后,最终可运行的应用软件系统就全部完成了。实际上,面向对象的软件开发还包括面向对象的测试和维护。它们在整个软件的生命周期中也占据了很大的分量,是非常复杂、烦琐的一件工作。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社面向对象的实现但是,在面向对象的软件开发中,由于采用了对象这个灵活、可扩展的概念,维护阶段的工作将被大大简化。综上所述,面向对象的软件开发可概括
31、为如下的过程。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社面向对象的实现操作步骤如下:(1)分析用户需求,从问题中抽取对象模型。(2)将模型细化,设计类,包括类的属性和类间相互关系,同时考察是否有可以直接引用的已有类或部件。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社面向对象的实现(3)选择一种面向对象的编程语言,具体编码实现上一阶段类的设计,并在开发过程中引入测试,完善整个解决方案。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社面向对象的实现由于对象的概念能够以更接近实际问题的原貌和实质的方式来表述和处理问题,所以面向对象的软件开发方法比以往面向
32、过程的方法有更好的灵活性、可重用性和可扩展性,使得上述“分析设计实现”的开发过程也更加高效、快捷。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社面向对象的实现即使出现因前期工作不彻底、用户需求改动等需要反馈并修改前面步骤的情况,也能够在以前工作的基础之上从容地完成,而不会陷入传统方法中不得不推翻原有设计,重新考虑数据结构和程序结构的尴尬境地。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社上 机 练 习 本 次 上 机 练 习 首 先 定 义 一 个 类“Monky”和 它 的 一 个 对 象“LittleMonky”,并设置Monky类中的若干变量(属性)和方法(行
33、为)。通过本次练习能够对面向对象程序设计的概念有一个初步的了解。(光盘:源文件第2章上机练习.txt)。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社运行结果电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社习 题(1)主要的编程思路有哪些?面向对象的编程思路有何优势?(2)简述面向过程问题求解和面向对象问题求解的异同。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社习 题(3)面向对象程序设计中有哪些核心概念?其中对象的属性有哪些?它们的关系有哪几种?这些关系各有什么特点?(4)有人说“大学”和“清华大学”之间是继承的关系。这种说法是否正确?为什么?电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社习 题(5)面向对象的软件开发包括哪些过程?OOA模型包括哪5个层次?OOD模型在OOA模型的基础上引入了哪些工作?