Java语言综述.doc

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Sun Website, The Java Language: An Overview, /docs/overviews/java/java-overview-1.html,2004 Java语言综述 Hoare. C A R Monitors 摘要:Java作为一种定位于网络使用的编程语言,越来越成为计算机行业的焦点。它具有许多适宜于互连网异构平台环境的特点。论文介绍了Java语言的如下几个特点:简单、面向对象、网络灵活性、解释(执行)、健壮性、安全性、平台独立性、移动性、高性能、多线程处理和动态性。 关键词:Java 面向对象 多线程处理 动态性 绪论 Java 编程语言和环境是为了解决现代编程实践中存在的大量的问题而被开发设计的。Java 最初是作为为家用消费电子产品开发先进的软件这个较大项目的一部分。这些设备具有小、可靠、可移动、分布、 实时嵌入系统的特点。起初我们打算使用C++ 来完成这个项目, 但是遇到了许多问题。 最初是即时编译器技术问题,但是随着时间的推移,涌现出了更多可以用改变这种语言来得到最好解决问题。 Java Java是一种简单、面向对象、网络灵活的、解释(执行)的、健壮的、安全的、与平台无关的、可移动的、高性能的、多线程的以及动态的程序设计语言。 描绘一个系统的一种方法是用一套专业术语。我们使用一套标准的专业术语来描述Java。下面将给出我们那些专业术语的解释和我们设法解决的问题。 Archimedes 公司是一个生产一种基础物理教育软件的虚拟软件公司。 这套软件的设计是用来与用户打交道的, 不仅提供传统课本方式的文本和例证, 而且还提供一套可以用来设计和模仿实验的软件实验室平台。 最基本的实验是允许学生把杠杆和滑轮放在一起并观察它们怎么运动。 Archimedes设计师们的艰辛和用斜体字印刷的叙述的实验在这里用来为Java 语言概念提供例子。 简单 我们想建立一种不需要经过高级培训并且支持今天标准操作的很容易被编程系统。目前大多数程序员都使用C,使用C++实现面向对象的编程。因此即使我们发现C++ 是不合适的, 我们还是设计了与C++相似的Java 尽可能地使系统更容易被理解。 Java 省去了C++中给我们的经验带来更多麻烦而非好处的许多很少被使用, 很难懂,缠扰不清的特点。这些被省去的特点主要包括运算符过载(虽然Java 语言中的确也有方法过载), 多重继承性, 并且广泛的自动强制。 我们增加了自动垃圾收集,从而简化了Java编程时的任务,但使得Java程序设计系统较为复杂。导致许多C、C++应用程序复杂的一个根本原因是存储器的管理: 内存的分配和释放。 由于具有自动垃圾收集(定期释放内存没有提到),Java语言不仅使编程的任务更加容易,而且大幅度地减少了漏洞。 Archimedes 的成员曾经希望把他们的时间花费在考虑杠杆和滑轮上, 然而却在世俗的编程任务上花费了很多时间。 他们的核心是知识教育, 而不是编程。这些编程任务中最复杂的是推测在他们20K 的代码行中哪些内存被浪费。 另一方面是小而简单。Java的目标之一是使软件设计可以在小机器上独立运行。Java 编译器和标准库占有一个小空间。 这个小空间对嵌入式系统的应用很重要,因此Java可能容易通过网络被下载。 面向对象 不幸的是, 这是一个在工业上最使用过度的专业术语之一。但面向对象的设计是非常强有力的,因为它有利于接口的清晰定义还可以提供使可再用的“软件ICs” 。 简单地说,面向对象设计是一种设计重点在于数据(=对象)及其接口的技术。以木匠业为例,一个面向对象的 木匠将会主要涉及他担任制作的椅子,其次有制作椅子使用的工具; 一个非面向对象木匠则主要是他的工具。 面向对象的设计也是定义模块如何“即插即用系统网络动作程序)URLs(统一资源定位器)打开和访问对象, 程序员被用来访问一个本地文件系统。 Archimedes的成员最初确立他们的原料为CD ROM。 但他们有一些关于交互式学习比赛的想法,希望用下一代产品来试验。例如,他们想允许学生在不同的计算机上进行合作,并将建立一个虚拟机器。 但是他们发现所有网络系统是复杂并且需要资深的软件专家。 因此他们放弃了。 健壮性 Java 试图编写必须在各个方面都可靠的程序。 Java非常重视可能发生问题的早期检查, 最新动态(运行时间) 检查, 并且清除容易发生错误倾向的情况。 一种强烈被键入的语言的好处之一(如C++)是它允许广泛编译时间检测因此故障可以被及早被发现。 不幸的是,C++编继承了C在编译时间检查方面的一些漏洞,那些是较为宽松的(特别是方法/程序的声明)。在Java语言里,我们要求必须声明,并且不支持C型的隐含声明。 连接器了解类型系统并重复许多类型的检查,

文档评论(0)

绿风 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档