毕业设计外文资料翻译--一切都是对象

毕业设计外文资料翻译--一切都是对象

ID:39456473

大小:53.00 KB

页数:7页

时间:2019-07-03

毕业设计外文资料翻译--一切都是对象_第1页
毕业设计外文资料翻译--一切都是对象_第2页
毕业设计外文资料翻译--一切都是对象_第3页
毕业设计外文资料翻译--一切都是对象_第4页
毕业设计外文资料翻译--一切都是对象_第5页
资源描述:

《毕业设计外文资料翻译--一切都是对象》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、毕业设计外文资料翻译学院:专业班级:12(2)学生姓名:学号:指导教师:外文出处:LudwigWittgenstein(1889-1951)EverythingIsanObject附件:1.外文资料翻译译文;2.外文原文指导教师评语:原文所涉及内容与课题有关联,翻译难度适中。该生所作的译文,术语的使用基本准确,译文内容与原文含义基本相符,但部分译文语句不是很通顺。译文格式符合规范,按时完成了外文翻译任务。签名:年月日外文资料翻译译文一切都是对象“如果我们说另一种不同的语言,那么我们就会发觉一个有些不同的世界”

2、。—LudwigWittgenstein(1889-1951)“尽管以C++为基础,但Java是一种更纯粹的面向对象程序设计语言”。无论C++还是Java都属于杂合语言。但在Java中,设计者觉得这种杂合并不像在C++里那么重要。杂合语言允许采用多种编程风格;之所以说C++是一种杂合语言,是因为它支持与C语言的向后兼容能力。由于C++是C的一个超集,所以包含的许多特性都是后者不具备的,这些特性使C++在某些地方显得过于复杂。Java语言首先便假定了我们只希望进行面向对象的程序设计。也就是说,正式用它设计之前,

3、必须先将自己的思想转入一个面向对象的世界(除非早已习惯了这个世界的思维方式)。只有做好这个准备工作,与其他OOP语言相比,才能体会到Java的易学易用。在本章,我们将探讨Java程序的基本组件,并体会为什么说Java乃至Java程序内的一切都是对象。用句柄操纵对象每种编程语言都有自己的数据处理方式。有些时候,程序员必须时刻留意准备处理的是什么类型。您曾利用一些特殊语法直接操作过对象,或处理过一些间接表示的对象吗(C或C++里的指针)?所有这些在Java里都得到了简化,任何东西都可看作对象,。因此,我们可采用一

4、种统一的语法,任何地方均可照搬不误。但要注意,尽管一切都“看作”对象,但操纵的标识符实际是指向一个对象的“句柄”(Handle)。在其他Java参考书里,还可看到有的人将其称作一个“引用”,甚至一个“指针”。可将这一情形想象成用遥控板(句柄)操纵电视机(对象)。只要握住这个遥控板,就相当于掌握了与电视机连接的通道。但一旦需要“换频道”或者“关小声音”,我们实际操纵的是遥控板(句柄),再有遥控板自己操纵电视机(对象)。如果要在房间里四处走走,并想保持对电视机的控制,那么手上拿着的是遥控板,而非电视机。此外,即使

5、没有电视机,遥控板亦可独立存在。也就是说,只是由于拥有一个句柄,并不表示必须有一个对象同它连接。所以如果想容纳一个词或句子,可创建一个String句柄:Strings;但这里创建的只是句柄,并不是对象。若此时向s发送一条消息,就会获得一个错误(运行期)。这是由于s实际并未与任何东西连接(即“没有电视机”)。因此,一种更安全的做法是:创建一个句柄时,记住无论如何都进行初始化:Strings=“zyp”;然而,这里用到了Java语言的一个特性:字串可以用加引号的文本初始化。通常,必须为对象使用一种更通用的初始化方

6、法。存储到什么地方程序运行时,我们最好对数据保存到什么地方做到心中有数。特别要注意的是内存的分配。有六个地方都可以保存数据:(1)寄存器。这是最快的保存区域,因为它位于不同于其他存储区的地方——处理器内部。然而,寄存器的数量十分有限,所以寄存器是根据需要由编译器分配。我们对此没有直接的控制权,也不可能在自己的程序里找到寄存器存在的任何踪迹(另一方面,C和C++允许您向编译器建议寄存器的分配方式)。(2)堆栈。驻留于常规RAM(随机访问存储器)区域,但可通过它的“堆栈指针”获得处理的直接支持。堆栈指针若向下移,

7、会创建新的内存;若向上移,则会释放那些内存。这是一种特别快、特别有效的数据保存方式,仅次于寄存器。创建程序时,Java编译器必须准确地知道堆栈内保存的所有数据的“长度”以及“存在时间”。这是由于它必须生成相应的代码,以便向上和向下移动指针。这一限制无疑影响了程序的灵活性,所以尽管有些Java数据要保存在堆栈里——特别是对象句柄,但Java对象并不存储于其中。(3)堆。一种通用的内存池(也在RAM区域),用于存放所有的Java对象。和堆栈不同,“内存堆”或“堆”(Heap)最吸引人的地方在于编译器不必知道要从堆

8、里分配多少存储空间,也不必知道存储的数据要在堆里停留多长时间。因此,用堆保存数据时会得到更大的灵活性。要求创建一个对象时,只需要用new命令编制相关的代码即可。执行这些代码时,会在堆里自动进行数据的保存。当然,为达到这种灵活性,必然付出一定的代价:在堆里分配存储空间时会花掉更长的时间(如果确实可以在Java中像在C++中一样在栈中创建对象)。(4)常量存储。常数值通常直接置于程序代码内部。这样做是安

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

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

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