Java的平台独立性
来源:互联网 发布:mac chill 试色 编辑:程序博客网 时间:2024/05/21 01:53
平台独立性是指可以在一个平台上编写和编译程序,而在其他平台上运行。
保证Java具有平台独立性的机制为“中间码(字节码)”和“Java虚拟机(Java Virtual Machine,JVM)”。Java程序编译后不是生成能在硬件平台上可执行的代码,而是生成了一个“中间码”。不同的硬件平台上会安装有不同的JVM,由JVM来负责把“中间码”翻译成硬件平台能执行的代码。由此可以看出JVM不具有平台独立性,而是与硬件平台相关的。
解释执行过程分为三步进行:代码的装入、代码的校验和代码的执行。装入代码的工作由“类装载器”完成。被装入的代码由字节码校验器进行检查。
Java字节码的执行也分为两种方式:即时编译方式和解释执行方式。
即时编译方式指的是解释器先将字节码编译成机器码,然后再执行该机器码。
解释执行方式指的是解释器通过每次解释并执行一小段代码来完成Java字节码程序的所有操作。
通常采用的是解释执行方式。
而在C/C++语言中,编译后的代码只能在特定的硬件上执行,换个硬件平台这些代码就无法执行,需要重新编译,从而导致了C/C++没有跨平台的特性。但C/C++有更高的执行效率。
0 0
- Java的平台独立性
- Java的平台独立性
- Java的平台独立性
- Java语言的平台独立性
- java的运行过程和平台的独立性
- 数据库的数据独立性
- 测试脚本的独立性
- 事件的独立性
- 随机变量的独立性
- 随机变量的独立性
- 谈开发同学的独立性和测试同学的独立性
- Bayes网络独立性的来源
- 谈谈Android的密度独立性
- 怎么保持数据的独立性和全局性?
- 数据库中数据的独立性解释
- 进阶过程:程序员做项目的独立性
- 提高C++ Builder程序的独立性
- 进阶过程:程序员做项目的独立性
- 开通博客的目的
- 我的收藏
- SDCard信息查询
- poj 1182 带权并查集经典
- JavaWeb之Filter(过滤器)
- Java的平台独立性
- maven项目创建后main/java missing问题
- JavaScript 模块化七日谈
- 我的debian8.4(Jessie)配置笔记
- slidingMenu侧滑菜单(加入碎片)
- 《Java虚拟机原理图解(一)》JVM运行时数据区
- ShardPreferences 保存登录状态
- js省市县联动
- 在项目中部署maven