java语言中对象的理解与应用

java语言中对象的理解与应用

ID:30768875

大小:152.52 KB

页数:10页

时间:2019-01-03

java语言中对象的理解与应用_第1页
java语言中对象的理解与应用_第2页
java语言中对象的理解与应用_第3页
java语言中对象的理解与应用_第4页
java语言中对象的理解与应用_第5页
资源描述:

《java语言中对象的理解与应用》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、Java语言中对象的理解与应用1弓I言(Introduction)面向对象是当前主流编程语言的共同的特征,如Java、C#语言。面向对象涉及到软件开发的各个阶段,具体包括面向对象分析00A、面向对象设计00D、面向对象编程OOP,形成了完整的面向对象的软件工程理论、方法和工具[1]。在学习面向对象编程语言时,首先学习的就是对象的概念,能够正确的理解对象和使用对象对于之后的面向对象特性学习具有很大帮助。木文从对象与类的理解、对象的原理和对象的使用三个方面循序渐进阐述,较全面的介绍了关于对象概念、对象存储原理及在编程中正确使用对象的技巧等内容,内容对

2、于理解面向对象思想和学习面向对象编程具有较大帮助。2理解对象与类(Understandingobjectsandclasses)掌握面向对象程序设计首先要正确理解面向对象思想,面向对象思想的核心是正确理解“万物皆对象”这句话。在编程时运用“万物皆对象”的思想是指:通过使用面向对象的方式,将现实世界中的实体看作为对象,对这些实体的特性进行描述,并分析出实体具有的功能或职责。描述实体特性的过程即为提取对象属性的过程,分析实体的功能或职责的过程即为提取对象方法的过程,完整描述一个对象即从属性和方法两个层面,提取对象属性和方法的过程即为使用面向对象思想进

3、行分析和抽象的过程。在把客观实体抽象为对象后,还要继续分析各对象之间的关系,最后将对象的抽象结果描述岀来形成一段文本,此文本即为面向对象思想中的“类class”。从以上过程可以发现,类是对象的属性、方法、对象之间关系的描述。对象是现实世界中可以描述的实体,是具体的;类是对象的描述,是不具体的,在编程时类体现为一段代码文本。•行驶():void+停止():void照别龄驾性年牌号格品型价_-駕驶员以下以驾驶员和汽车为例阐述类与对象的关系与区别。现实世界中汽车与驾驶员皆为生活中常见的实体。当我们看到一辆汽车时会自然联想到汽车的品牌、型号等属性信息,分

4、析其职责(功能)可以得出汽车可以行驶、停止。但汽车不会自己行驶或停止,它需要驾驶员执行启动、挂挡等操作,可以看出汽车与驾驶员二者是存在依赖关系的。分析驾驶员对象可以得出驾驶员具有驾驶证照号码、性别、年龄等属性信息,驾驶员具有“驾驶”能力。分析汽车对象可以得出汽车具有品牌、型号、价格等属性,汽车具有行驶和停止的功能。经过上述分析,可以抽象出汽车类和驾驶员类,以及两个类间的依赖关系,其类图如图1所示。+驾驶(in汽午:汽车类):voidstringstringint图1汽车类与驾驶员类图Fig.1Classdiagramofcarclassanddr

5、iverclass经过对汽车与驾驶员两个对象的分析,继而再抽象出两个类可以看出,面向对象思想与人类的思维方式极为相似,对于初学者而言并不难入门,但对于一些较为抽象的场景而言初学者通常会感觉稍有压力。下面以开发一款简单人机猜数字游戏为例继续理解对象与类的概念。人机猜数字游戏的规则为:机器随机生成一个数值,玩家输入猜的数字且每一局最多猜三次,若三次都未猜中则本局失败。游戏根据猜的数字位数分为三个级别,1位数为初级、2位数为中级、3位数为高级。根据游戏规则的描述可快速分析出本案例至少包括人类玩家对象和机器玩家对象。人类玩家对象具有玩家名称、当前游戏级别

6、属性,功能职责为输入猜的数字。机器玩家对象职责为根据当前人类玩家的级别生成相应位数的随机数字。根据上述分析可以看到只有人类玩家和机器玩家对象还无法实现游戏功能,因为目前还没有控制游戏进度的对象和描述游戏级别信息的对象。因此,在进一步分析后抽象出游戏对象和级别对象。游戏对象相当于裁判,可控制游戏的启动及停止、判断所猜数字是否正确和设置当前人类玩家的级别。游戏级别对象则用于保存级别的参数信息,包括级别名称、级别对应数字的位数。综上所述,本案例最后抽取出游戏类、机器玩家类、人类玩家类、游戏级别类。其中游戏类与机器玩家类、人类玩家类具有关联关系,机器玩家

7、类与人类玩家类具有依赖关系,人类玩家类与游戏等级类具有关联性,其类图如图2所示。图2人机猜数字游戏类图3Java对象管理(Javaobjectmanagement)Java语言编写的程序运行在Java虚拟机之上,基于此特点才实现了Java程序的平台无关性和良好的可移植性[乙3]。基于虚拟机平台运行的另一个好处是在编写程序时不再需要考虑C或C++语言中的手动内存管理问题,Java虚拟机会自动进行内存的申请和释放。在Java虚拟机中,存放对象的区域是内存占用比例最高的,这个区域称为堆heap[4,5]o因此能够理解对象在堆中的存储原理对编写高效的Ja

8、va程序具有很大帮助。学习Java对象管理的主要内容是学习对象的生命周期,即对象的创建、使用和销毁三个阶段。3.1对象创建创建一个Jav

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。