- 1、本文档共34页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
jav非a大学教学课件第二章面向对象程序设计
《 Java语言程序设计》 第二章: 面向对象程序设计 2.1 面向对象的程序设计方法-1 一、面向过程的程序设计方法 以前,人们把程序看成是处理数据的一系列过程。过程或函数定义为一个接一个执行的一组指令。数据与程序分开存储,编程的主要技巧在于追踪哪些函数调用哪些函数;哪些数据发生了变化。为解决其中可能存在的问题,结构化编程(1969年)应运而生。 结构化程序设计的主要思想是功能分解并逐步求精。当一些任务十分复杂以至无法描述时,可以将它拆分为一系列较小的功能部件,直到这些自完备的子任务小到易于理解的程度。 2.1 面向对象的程序设计方法-2 一、面向过程的程序设计方法 例如,计算一个公司中每一个职员的平均工资是一项较为复杂的任务。可以将其拆分为以下的子任务: (1)计算职员总数 (2)计算工资总额 (3)用工资总额除以职员总数 计算工资总额本身又可分为一系列子任务: (1)找出每个职员的档案 (2)读出工资数额 (3)把工资加到部分和上 (4)读出下个职员的档案 2.1 面向对象的程序设计方法-3 一、面向过程的程序设计方法 类似地,读出每个职员档案中的记录又可以分解为一系列子任务: (1)打开职员的档案 (2)找出正确记录 (3)从磁盘读取数据 结构化程序设计成功地为处理复杂问题提供了有力的手段。然而到80年代末,它些缺点越来越突出。 当数据量增大时,数据与处理这些数据的方法之间的分离使程序变得越来越难以理解。对数据处理能力的需求越强,这种分离所造成的负作用越显著。 2.1 面向对象的程序设计方法-4 一、面向过程的程序设计方法 采用结构化程序设计方法的程序员发现,每一种相对于老问题的新方法都要带来额外的开销,与可重用性相对,通常称这为重复投人。基于可重用性的思想是指建立一些具有已知特性的部件,在需要时可以插人到程序之中。这是一种模仿硬件组合方式的做法,当工程师需要一个新的晶体管时,他不用自己去发明,只要到仓库去找就行了。对于软件工程师来说,在面向对象程序设计出现之前,一直缺乏具备这种能力的工具。 2.1 面向对象的程序设计方法-5 二、面向对象的程序设计方法 面向对象程序设计的本质是把数据和处理数据的过程当成一个整体——对象。Java全面支持面向对象程序设计。面向对象程序设计的实现需要封装和数据隐藏技术,需要继承和多态性技术。 2.1 面向对象的程序设计方法-6 二、面向对象的程序设计方法 1.封装和数据隐藏 当一个技术员要安装一台电脑时,他将各个设备组装起来。当他想要一个声卡时,不需要用原始的集成电路芯片和材料去制作一个声卡,而是来到电脑公司,购买一个他所需要的某种功能的声卡。技术员关心的是声卡的功能,并不关心声卡内部的工作原理。声卡是自成一体的。这种自成一体性称为封装性。无需知道封装单元内部是如何工作就能使用的思想称为数据隐藏。 2.1 面向对象的程序设计方法-7 二、面向对象的程序设计方法 声卡的所有属性都封装在声卡中,不会扩展到声卡之外。因为声卡的数据隐藏在该电路板上。技术员无需知道声卡的工作原理就能有效地使用它。 Java通过建立 类 来支持封装性和数据隐藏。完好定义的类一旦建立,就可看成是完全封装的实体,可以作为一个整体单元使用。类的实际内部工作应当隐藏起来,使用完好定义的类的用户,不需要知道类是如何工作的,只要知道如何使用它就行。 2.1 面向对象的程序设计方法-8 二、面向对象的程序设计方法 2.继承和重用 要制造新的电视机,可以有两种选择:一种是从草图开始,另一种是对现有的型号加以改进。也许现有的型号已经令人满意,但如果再加一个功能,会更加完美。电视机工程师肯定不想从头开始,而是希望制造另一种新型电视机,该机是在原有的型号基础上增加一组电路做成的。新的电视机很快就制造出来了,被赋予一种新的型号,于是新型电视机就诞生了。这是继承和重用的实例。 2.1 面向对象的程序设计方法
文档评论(0)