Java跨平台原理浅析

开发 后端
这里向大家简单介绍一下Java跨平台的原理,主要包括Java字节码的两种执行方式和Java程序执行与C/C++程序执行的对比分析两大部分内容,相信本文介绍对你一定会有所帮助。

使用Java语言编写应用程序***的优点在于“一次编译,处处运行”,然而这并不是说所有的Java程序都具有Java跨平台的特性,事实上,相当一部分的Java程序是不能在别的操作系统上正确运行的,

Java跨平台的原理

Java字节码的两种执行方式

1、即时编译方式:解释器先将字节码编译成机器码,然后再执行该机器码。

2、解释执行方式:解释器通过每次解释并执行一小段代码来完成Java字节码程序的所有操作。
 
 通常采用的是第二种方法。由于JVM规格描述具有足够的灵活性,这使得将字节码翻译为机器代码的工作具有较高的效率。对于那些对运行速度要求较高的应用程序,解释器可将Java字节码即时编译为机器码,从而很好地保证了Java代码的可移植性和高性能。

Java程序执行与C/C++程序执行的对比分析

如果把Java源程序想象成我们的C++源程序,Java源程序编译后生成的字节码就相当于C++源程序编译后的80x86的机器码(二进制程序文件),JVM虚拟机相当于80x86计算机系统,Java解释器相当于80x86CPU。在80x86CPU上运行的是机器码,在Java解释器上运行的是Java字节码。

Java解释器相当于运行Java字节码的“CPU”,但该“CPU”不是通过硬件实现的,而是用软件实现的。Java解释器实际上就是特定的平台下的一个应用程序。只要实现了特定平台下的解释器程序,Java字节码就能通过解释器程序在该平台下运行,这是Java跨平台的根本。当前,并不是在所有的平台下都有相应Java解释器程序,这也是Java并不能在所有的平台下都能运行的原因,它只能在已实现了Java解释器程序的平台下运行。

【编辑推荐】

  1. Java跨平台程序设计规则
  2. 解决JVM***内存设置问题
  3. 调用weblogic设置jvmheap大小
  4. 详解Tomcat配置JVM参数步骤
  5. 深入学习JVM内存设置原理和调优
责任编辑:佚名 来源: blog.163.com
相关推荐

2020-02-24 21:23:41

跨平台想法尝试

2009-03-23 09:05:01

2021-04-08 14:45:57

Java语言计算机

2015-03-12 14:06:08

Java虚拟机平台原理

2023-12-13 13:15:13

平台开发实践

2020-08-05 08:21:41

Webpack

2010-09-25 13:47:14

Java跨平台

2009-07-16 10:23:30

iBATIS工作原理

2023-05-11 07:25:57

ReduxMiddleware函数

2020-11-05 11:14:29

Docker底层原理

2011-09-14 10:03:46

Android SDK

2022-06-09 15:53:16

移动端渲染GPU

2011-04-13 15:01:39

2019-08-05 13:20:35

Android绘制代码

2013-11-04 16:32:58

badBIOS病毒

2012-07-06 15:00:03

跨平台工具MoSync

2019-03-25 15:14:19

Flutter马蜂窝开发

2015-04-28 13:56:00

JavaJava优势跨平台

2012-07-06 15:08:14

跨平台工具Netbiscuits

2009-01-20 09:22:09

NGN下一代网络电信
点赞
收藏

51CTO技术栈公众号