龙空技术网

Java基础:Java实现跨平台的原理是什么?

云端源想IT培训 112

前言:

而今朋友们对“java怎么实现跨平台”可能比较重视,咱们都想要剖析一些“java怎么实现跨平台”的相关内容。那么小编也在网络上收集了一些有关“java怎么实现跨平台””的相关文章,希望姐妹们能喜欢,大家一起来了解一下吧!

“这里是云端源想IT,帮你轻松学IT”

嗨~ 今天的你过得还好吗?

人生总有不期而遇的温暖

也会有生生不息的希望

- 2023.07.24 -

相信大家看到很多Java书上都会说,Java的一大特性是可以实现跨平台,那么什么是跨平台呢?Java又是怎么实现的呢?下面就来给大家讲讲Java语言跨平台的原理。

一、什么是跨平台

平台:指的是操作系统(Windows,Linux,Mac)。

跨平台:是指Java语言编写的程序,一次编译后,可以在多个系统平台上运行。举个不垮平台的例子:我们电脑版的qq、微信发送给手机是不能安装使用的,这是因为电脑版的是windows版本的,手机的是安卓或ios的。

实现跨平台:Java程序是通过Java虚拟机在系统平台上运行的,只要该系统可以安装相应的Java虚拟机(JVM),该系统就可以运行Java程序。

注意:不是能在所有的平台上运行,关键是该平台是否能安装相应的虚拟机。

二、Java如何实现跨平台

Java的专业解释:Java虚拟机(Java Virtual Machine,简称 JVM)是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。Java虚拟机包括一套字节码指令集、一组寄存器、一个栈、一个垃圾回收堆和一个存储方法域。

JVM屏蔽了与具体操作系统平台相关的信息,使Java程序只需生成在Java 虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。JVM在执行字节码时,实际上最终还是把字节码解释成具体平台上的机器指令执行。

通俗的说:JVM,也就是Java虚拟机,是一个平台,它包含于JRE的下面。当你需要执行某个Java程序时,由JVM帮你进行编译和执行。我们编写的Java源码,编译后会生成一种 .class文件,称为字节码文件。Java虚拟机就是负责将字节码文件翻译成特定平台下的机器码然后运行。

而这个过程中,我们编写的Java程序没有做任何改变,仅仅是通过JVM这一”中间层“,就能在不同平台上运行,真正实现了”一次编译,到处运行“的目的。

三、JDK,JRE,JVM是什么

首先是JDK,DK(Java Development Kit) 是Java语言的软件开发工具包(SDK)。在JDK的安装目录下有一个jre目录,里面有两个文件夹bin和lib,在这里可以认为bin里的就是jvm,lib中则是jvm工作所需要的类库,而jvm和 lib合起来就称为jre。

然后我们来看JRE,JRE(Java Runtime Environment,Java运行环境),包含JVM标准实现及Java核心类库。JRE是Java运行环境,并不是一个开发环境,所以没有包含任何开发工具(如编译器和调试器)。

最后来说JVM,JVM就是Java虚拟机,有多个版本,用来支持Java跨平台的。

关于安装和配置java环境

这个之前有详细讲过的哦,需要的小伙伴可以在主页查看之前的文章,这里再大概说一下:

1、先下载安装jdk,首先搜索jdk下载,去Orcle官网下载,下载完后安装;

2、安装完毕后会有jdk,和jre两个文件夹;

JDK打开后目录结构如下图所示:

3、配置环境变量,

打开windons系统的环境变量设置窗口,win10下是:打开我的电脑,在空白处右键单击选择“属性”->“高级系统设置”->“环境变量”;

然后在用户变量这里新建,变量名为PATH,变量值为javac.exe的路径,例如D:\code\jdk1.8.0_151\bin,点击保存。

打开cmd,输入javac,出现下图说明已经配置成功:

四、编写Java程序并编译

安装配置好Java环境之后,我们可以尝试编写一个简单的Java程序并编译出来:

1、在D盘下新建一个文本文件,改后缀名为.java. 比如111.java;

2、 打开111.java,编辑,输入如下代码:

class Hello{public static void main(String[] args){System.out.println("HelloWorld");};}

3、打开cmd,进入D盘,输入javac 111.java,这是编译的命令,javac是编译的意思;

4、编译成功后,会在同样目录下生成Hello.class字节码文件;

5、启动JVM,并执行字节码文件,语法:java 带有main函数的类名举例java Hello;

6、控制台输出“Hello World”。

以上就是Java跨平台的原理及相关的名字解释,相信大家看完这篇文章对Java跨平台性的原理已经理解了。

我们下期再见!

END

文案编辑|云端学长

文案配图|云端学长

内容由:云端源想分享

标签: #java怎么实现跨平台 #java语言编写的程序是一次编译到处运行