技术问答-1 跨平台

版权声明:本文为博主原创文章,未经博主允许不得转载,如需转载请在明显处标明出处! https://blog.csdn.net/qq_36291682/article/details/86637098
1. 什么是跨平台?

我对跨平台的理解就是 Write Once,Run Anywhere

2. 跨平台原理?

跨平台少不了我们的大功臣—JVM(JAVA Virtual Machine) java虚拟机
1) .java文件(java源码)编译之后会生成.class文件(字节码文件)
2) 字节码不能直接运行,它需要被JVM翻译成机器码才能运行
3) 同一个JAVA程序,通过JVM翻译,就能在不同的平台上运行,实现Write Once,Run Anywhere
4) JVM也是一个软件,不同的平台有不同的版本。只要在不同平台上安装对应的JVM,就可以运行字节码文件
5)JVM是实现跨平台的关键,Java代码首先被编译成字节码,再由JVM将字节码文件翻译成机器语言,从而达到运行Java的目的
注意:编译的结果不是生成机器码,而是生成字节码,不同的平台下编译生成的字节码是一样的,但是由于JVM翻译成的机器码不一样。

3. JVM JDK JRE

jvm:java virtaual machine java虚拟机
只认识xx.class 将class 文件字节码进行识别调用操作系统的api
jre:java runtime environment java运行时环境
jvm标准实现+java一些类库 相对jvm来说多了一些java类库
jdk:java development kit java开发工具包
jdk是整个java开发的核心,他集成了一些jre好用的小工具,例如javac.exe java.exe jar.exe
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_36291682/article/details/86637098