- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第1章 绪论 1.1 Java概述 1.1.1 Java语言的发展 1.1.2 Java与C++的比较 1.1.3 Java工作原理 1.1.4 Java语言的的特征 1.1.1 Java语言的发展 Java前身是一种与平台无关的语言——oak,oak诞生于1991年Sun公司的一个研究项目。该项目由James Goslingt(如图1-1所示)和 Patrick Naughton领导的Green研究小组承担,为诸如烤面包机、电冰箱、机顶盒这样的消费类电子设备设计一个通用环境,目的只是为了开发一种独立于平台的控制软件,和它们进行信息交流。但项目的结果并不成功。 Internet出现后,Sun公司发现,原来的oak语言所具有的跨平台、面向对象、安全性高等特点,非常符合互联网的需要。于是,在进一步改进该语言的设计后,设计人员最终将这种语言取名为java,并配上一杯冒着热气的咖啡作为它的标志(Java是印度尼西亚爪哇岛的英文名称,因盛产咖啡而闻名)。1995年5月23日,Sun在SunWorld’95上正式发布Java和HotJava浏览器,标志着Java语言的诞生,至此,一种全新的语言诞生了。Java是第一种用于编写Web程序的高级编程语言,同时又是一种通用的程序设计语言,还是完全的面向对象的编程语言。之后Java得到了迅速的发展,目前Java的应用范围除了基于Internet的Web开发领域之外,它还具备一般程序设计的全部功能,甚至更强。 1.1.2 Java与C++的比较 C++与Java之间存在许多联系又有很大的区别: (1)C++和Java在语法上非常相似。 (2)C++和Java之间的最大不同是Java不再支持指针。指针使C++语言成为功能最强大最重要的一种编程语言,但同时指针在使用不正确的情况下也是C++中最危险的部分。 (3)Java被编译成虚拟机字节码,需要由虚拟机运行;C++则被编译成本地机器码。这点使C++运行更快。 (4)Java对基本数据类型有规定的字节大小;C++中类型的字节大小取决于C++(和C)的实现。Java中所有对象都是按引用传递的;C++中,默认是按值传递的。 (5)C++是C的超集,保留了许多功能,如内存管理、指针和预处理,这是为了和C保持完全兼容。Java去除了这些功能,它用垃圾收集代替了程序员释放内存;它还放弃了运算符重载和多重继承等C++的功能;但它可以利用接口实现有限制的多重继承。 (6)Java关注的是安全性,可移植性和快速开发;C++则更多关注性能以及与C向下兼容。 1.1.3 Java工作原理 Java程序的运行必须经过编写、编译、运行三个步骤。 编译是指Java编译器对源文件进行错误排查的过程,编译后将生成后缀名为.class的字节码文件,这不像C语言那样最终生成可执行文件。Java字节码文件是一种和任何具体机器环境及操作系统环境无关的中间代码,它是一种二进制文件,是源文件由Java编译器编译后生成的目标代码文件。编程人员和计算机都无法直接读懂字节码文件,它必须由专用的Java解释器来解释执行,因此Java是一种在编译基础上进行解释运行的语言。 运行是指使用Java解释器将字节码文件翻译成机器代码,执行并显示结果。这一过程如图1-2所示。 Java解释器负责将字节码文件翻译成具体硬件环境和操作系统平台下的机器代码,以便执行。因此Java程序不能直接运行在现有的操作系统平台上,它必须运行在被称为Java虚拟机的软件平台之上。 Java虚拟机(JVM)是运行Java程序的软件环境,Java解释器就是Java虚拟机的一部分。Java虚拟机(JavaVirtual Machine) 可以理解成一个以字节码为机器指令的CPU。在任何操作系统中,只要JVM存在,Java程序都可以运行,真正实现了程序的可移植性。不同平台解释执行同样的Java字节码,实现了“一次编译,处处运行”。 在运行Java程序时,首先会启动JVM,然后由它来负责解释执行Java的字节码,并且Java字节码只能运行于JVM之上。这样利用JVM就可以把Java字节码程序和具体的硬件平台以及操作系统环境分隔开来,只要在不同的计算机上安装了针对特定具体平台的JVM,Java程序就可以运行,而不用考虑当前具体的硬件平台及操作系统环境,也不用考虑字节码文件是在何种平台上生成的。JVM把这种不同软硬件平台的具体差别隐藏起来,从而实现了真正的二进制代码级的跨平台移植。JVM是Java平台无关的基础,Java的跨平台特性正是通过在JVM中运行Java程序实现的。 1.1.4
您可能关注的文档
最近下载
- 2025年护理人员N1进阶N2考试试题及答案 .pdf VIP
- DB21T1342-2021 建筑工程文件编制归档规程.pdf
- Unit-1-Discovering-Useful-Structures-超好用的公开课获奖课件-(.pptx VIP
- 专业技术职务任职资格评审表.doc VIP
- 医疗操作规程.docx VIP
- 湖北省专业技术职务任职资格评审表.docx
- 钒酸铋光催化剂的制备及改性.pdf VIP
- 城市轨道交通列车牵引与制动系统(配实训工单) 实训手册(带答案).docx VIP
- 吊装施工专业技术方案(含计算).doc VIP
- 城市轨道交通车辆维护与检修中职全套完整教学课件.pptx
文档评论(0)