java面向对象软件开发概述【沐风教学】

上传人:枫** 文档编号:567459712 上传时间:2024-07-20 格式:PPT 页数:26 大小:271.50KB
返回 下载 相关 举报
java面向对象软件开发概述【沐风教学】_第1页
第1页 / 共26页
java面向对象软件开发概述【沐风教学】_第2页
第2页 / 共26页
java面向对象软件开发概述【沐风教学】_第3页
第3页 / 共26页
java面向对象软件开发概述【沐风教学】_第4页
第4页 / 共26页
java面向对象软件开发概述【沐风教学】_第5页
第5页 / 共26页
点击查看更多>>
资源描述

《java面向对象软件开发概述【沐风教学】》由会员分享,可在线阅读,更多相关《java面向对象软件开发概述【沐风教学】(26页珍藏版)》请在金锄头文库上搜索。

1、面向对象软件开发面向对象软件开发概述概述本章介绍的有关概念将在后续章节中逐步加深理解教材第教材第1章章认识空间解空间认识空间解空间现实世界认识空间认识空间 解空间解空间计算机解决客观世界中问题的本质计算机解决客观世界中问题的本质n借助某种程序借助某种程序设计语言的言的规定,将客定,将客观世界中待世界中待处理的理的对象抽象象抽象为程序中的程序中的对象(称象(称为解空解空间对象)象)n 然后利用程序的功能然后利用程序的功能对解空解空间对象象进行行处理,并将理,并将处理理结果映射果映射为问题的解。的解。 现实世界中的对象现实世界中的对象解空间对象解空间对象机器语言汇编语言面向对象语言高级语言程序设计

2、语言程序设计语言解空间对象解空间对象n解空解空间对象是什么模型,要取决于所使用的程序象是什么模型,要取决于所使用的程序设计语言:言:v汇编语言提供的言提供的对象象 存存储单元。元。v面向面向过程的高程的高级语言所提供的言所提供的对象象 各种各种预定定义类型的型的变量、数量、数组、记录和文件等。和文件等。v面向面向对象象语言提供的言提供的对象象 对象象n一旦提供了某种解空一旦提供了某种解空间对象,也就象,也就隐含含规定了允定了允许对该类对象施加的操作。象施加的操作。面向过程语言面向过程语言n面向面向过程的程的语言言语言中所提供的解空言中所提供的解空间对象象实质上上仅仅是描述是描述实际对象的属性数

3、据,而缺少象的属性数据,而缺少对象的行象的行为。n只有从外部只有从外部对对象施加操作,才能模象施加操作,才能模拟对象的行象的行为。n面向面向过程的程序把数据和程的程序把数据和处理理 人人为地分开,会增加地分开,会增加软件开件开发 的的难度,也不利于度,也不利于为现实世界世界 中的中的对象建模。象建模。数据区程序区面向对象观点面向对象观点n人人们在在观察和分析周察和分析周围的事物的事物时,经常是用一种面常是用一种面向向对象的象的观点看待点看待问题。n我我们周周围的世界是由各式各的世界是由各式各样的的对象象组成:成:v 例如学校中,学生、教例如学校中,学生、教师、课程、班程、班级、教室、教室、计算

4、机、算机、电视机、空机、空调等都是等都是对象。象。v 对象可以是人,可以是物,可以是具体的事物,也可以象可以是人,可以是物,可以是具体的事物,也可以是抽象的概念。是抽象的概念。n我我们周周围所所发生的一切,无非是生的一切,无非是对象相互作用的象相互作用的结果。果。客观世界中对象的属性客观世界中对象的属性n客客观世界中世界中对象:象:v状状态(数据)(数据) 静静态属性属性v行行为(功能)(功能) 动态属性属性n对象既含数据又含功能,因此具有自身象既含数据又含功能,因此具有自身处理数据的理数据的能力能力 能能动的主体。的主体。n对象是一种看象是一种看问题的的观点,是点,是对现实世界各种元素世界各

5、种元素的一种抽象。的一种抽象。n对象被象被认为是迄今是迄今为止最接近真止最接近真实事物的数据抽象。事物的数据抽象。电梯举例面向对象语言面向对象语言n面向面向对象象语言中的解空言中的解空间对象比象比较好地模好地模拟了了现实世界中的世界中的对象。象。n将将对象定象定义为数据及可以施加在数据及可以施加在这些数据上的操作些数据上的操作所构成的所构成的统一体。一体。n该对象与象与传统的数据有本的数据有本质的区的区别,v 传统数据被数据被动地等待外界地等待外界对它的操作。它的操作。v 对象象进行行处理的主体。理的主体。n可以通可以通过向向对象象发“消息消息”来来请求求对象主象主动地地执行行它的某些操作,它

6、的某些操作,处理它的内部数据,完成理它的内部数据,完成对象所具象所具有的某有的某项功能。功能。对象对象nint x ; 变量量xnInteger x ; 对象象xv int compareTo(Integer anotherInteger) v double doubleValue() v float floatValue() v int intValue() v long longValue() v short shortValue() v String toString() x.toString()对象x所具有的功能面向过程面向机器面向过程面向机器n在面向在面向过程的程序程的程序设计中,核

7、心是:中,核心是: v 数据数据结构是利用构是利用计算机的离散算机的离散逻辑来量化表达需要来量化表达需要处理理的数据的数据对象;象;v 而算法而算法则是研究如何快捷、高效地是研究如何快捷、高效地组织解决解决问题的具体的具体过程。程。n面向面向过程本程本质上是面向机器,而不是面向上是面向机器,而不是面向问题。算法数据结构算法数据结构面向对象程序设计面向对象程序设计n面向面向对象的程序象的程序设计的的编程思路程思路v不是把程序看作是工作在数据上的一系列不是把程序看作是工作在数据上的一系列过程或函数的集程或函数的集合,而是把程序看作是相互合,而是把程序看作是相互协作又彼此独立的作又彼此独立的对象的集

8、象的集合。合。v每个每个对象就像一个微型程序,有自己的数据、操作和功能。象就像一个微型程序,有自己的数据、操作和功能。v在在许多系多系统中,解空中,解空间中的中的对象可以直接模象可以直接模拟我我们实际接接触的触的对象。象。面向对象技术意义面向对象技术意义n减少人减少人脑和和电脑之之间的隔的隔阂v长期以来,人与期以来,人与计算机之算机之间仍存在着仍存在着较大的隔大的隔阂:v 人人认识问题时的的认识空空间和和计算机算机处理理问题时的方法空的方法空间的不一致;的不一致;v 而面向而面向对象技象技术有助于减小有助于减小这一隔一隔阂、并使、并使这两个空两个空间尽量尽量趋于一致。于一致。n软件复用件复用v

9、类库的使用(可重用的的使用(可重用的标准化的模准化的模块)v类的的继承承n面向面向对象技象技术应用的普遍性用的普遍性面向对象技术面向对象技术-人人受益人人受益nfor managerv更迅速和更更迅速和更经济地开地开发和和维护软件系件系统。nfor analysts and designersv模模块化的化的过程将程将变的的简单,并能,并能获得一个清晰的、易于管得一个清晰的、易于管理的理的设计方案。方案。 nFor programmersv清晰的清晰的对象模型,丰富的面向象模型,丰富的面向对象开象开发工具及工具及类库使得使得编程程变为一件一件饶有有兴趣的工作。程序趣的工作。程序员明明显感到感到

10、编程效率程效率的提高。的提高。类与对象的基本概念类与对象的基本概念对象特征对象特征n 现实世界的世界的对象:象:v有自己的状有自己的状态,如一台空,如一台空调有自己有自己编号、号、摆放位置、放位置、颜色、色、尺寸、重量、工作状尺寸、重量、工作状态 v有自己的行有自己的行为(功能),如空(功能),如空调的开机、关机、制冷、制的开机、关机、制冷、制热、摆风 n机器世界的的机器世界的的对象:象:v 对象的状象的状态用属性来用属性来维护(变量)量)v 对象的行象的行为用方法来用方法来实现(代(代码)对象与类对象与类n相关相关对象的集合称象的集合称为 类(Class)n类是是对象的抽象及描述,它是具有象

11、的抽象及描述,它是具有统一属性和方法一属性和方法的多个的多个对象的象的统一描述体,是用来定一描述体,是用来定义一一组对象共象共有属性和方法的模板。有属性和方法的模板。n类是用来是用来创建建对象象实例的例的样板,它包含所板,它包含所创建建对象象的状的状态描述和方法的定描述和方法的定义。类是一个型,而是一个型,而对象象则是是这个型的一个个型的一个实例。例。n类是静是静态概念,而概念,而对象象则是一个是一个动态概念,因概念,因为只只有在运行有在运行时才才给对象分配空象分配空间,对象才真正存在。象才真正存在。对象与类对象与类对象与类对象与类 计算机世界 徐军 徐军(对象)学生(类)创 建 现实世界 概

12、念世界 学生 抽象 定义类 对应 封装封装n 封装是一种封装是一种组织软件的方法。件的方法。v基本思想:把客基本思想:把客观世界中世界中联系系紧密的元素及相关操作密的元素及相关操作组织在一起,使其相互关系在一起,使其相互关系隐藏在内部,而藏在内部,而对外外仅仅表表现为与其他封装体与其他封装体间的接口。从而构造出具有独立含的接口。从而构造出具有独立含义的的软件件实现。n封装并不是一个新的概念,但在面向封装并不是一个新的概念,但在面向对象的程序象的程序设计中提出了一种全新的封装方法中提出了一种全新的封装方法类与与对象象封装封装n类的接口与的接口与实现n如果如果类的属性或方法被定的属性或方法被定义为

13、public ,它就是接口的一部分,它就是接口的一部分,其他其他类可以直接可以直接访问它。它。n如果如果类的属性或方法被定的属性或方法被定义为private,它就是,它就是实现的一部分。的一部分。只有只有类自己的方法可以自己的方法可以访问它。它。n对象要注意保象要注意保护自己的数据(私有属性,公有方法)。自己的数据(私有属性,公有方法)。对象象通通过它它们的方法管理,的方法管理,实现由由编程人程人员控制。控制。n通通过接口与接口与对象象发生作用,内部生作用,内部实现不影响接口(汽不影响接口(汽车,内,内部部变化不影响化不影响驾驶)程序一部分)程序一部分变化不会影响其他部分。化不会影响其他部分。

14、继承继承n“ 类”具有具有继承的功能。承的功能。vB类继承了承了A类,就是,就是继承了承了A类公共的属性与方法。公共的属性与方法。(称(称A类为父父类,B类为子子类)n继承承类的复用的复用v在一般情况下,要定在一般情况下,要定义一个新一个新类,只需,只需继承一个父承一个父类,再,再描述一下它与父描述一下它与父类的不同之的不同之处就行了。就行了。 v继承性使得用承性使得用户可以在原有可以在原有类的基的基础上定上定义自己的新自己的新类。案例定单系统案例定单系统n公司需求:公司需求:v成立新的公司成立新的公司时尚服装;尚服装;v每月每月发布商品布商品编目,并寄目,并寄给定定户;v客客户可以可以发e-

15、mail 或或FAX定定货(寄定(寄定单););v对于客于客户的定的定货要要检查存存货清清单,如缺,如缺货,得,得暂时搁置定置定单,直到供,直到供货商送到商送到货;v公司公司检查支票和信用卡;支票和信用卡;v公司将定公司将定单下下发给仓库,给客客户发货;n注意:注意:v同种商品每月价格不一。如果同种商品每月价格不一。如果订户使用的是六个月之前的使用的是六个月之前的编目,价格采用当前目,价格采用当前编目价格;目价格;v公司接受所有主要的信用卡;公司接受所有主要的信用卡;分析对象分析对象n系系统是由相互作用的是由相互作用的对象象组成。任何系成。任何系统需要它的需要它的对象做它的工作。象做它的工作。

16、n案例案例对象:定象:定单,服装,客,服装,客户n在一个在一个问题域中域中识别对象不是科学而是象不是科学而是艺术。对象象取决于人的取决于人的观点(模点(模块化,化,应用)用)n从从“名名词”开始确定系开始确定系统中的中的对象。象。对象可以是:象可以是:v简单的和复的和复杂的:的:衬衣,衣,银行行v实际的和概念的:的和概念的:银行出行出纳员,银行行帐号号对象的属性和方法对象的属性和方法n确定确定对象的属性和方法象的属性和方法n对象属性:象属性:v 客客户客客户号,客号,客户名,地址名,地址 v 定定单定定单号,定号,定货条目,条目,顾客客 .n对象方法:象方法: 让对象做的事情象做的事情(可以可以对自己,也可以自己,也可以对其他其他对象),象),经常影响常影响对象属性。象属性。v 客客户提交定提交定单v 定定单打印定打印定单,改,改变条目条目测试对象测试对象n与与问题域是否有关、适当?域是否有关、适当?n是否独立存在是否独立存在v 客客户可以独立存在。可以独立存在。v 定定单可以,但在使用可以,但在使用时必必须有客有客户配合。配合。n是否有属性和方法。是否有属性和方法。

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 研究生课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号