Java(一)面向对象--02Java平台无关性?

2019-10-30  本文已影响0人  young十三

一、Java如何实现的平台无关性

平台无关(跨平台): 一种语言在计算机上的运行不受平台的约束,一次编译到处运行。
Java经过编译之后生成的.class字节码文件,运行平台上只要有JVM就能运行,不需要进行再次编译。用Java创建的可执行二进制程序,能够不加改变的运行于多个平台

Java平台无关性

在Java平台中,想要把Java文件,编译成二进制文件,需要经过两步编译,前端编译和后端编译:Java创建的可执行二进制程序,能够不加改变的运行于多个平台。

image.png

后端编译主要是将中间代码再翻译成机器语言。Java中,这一步骤就是Java虚拟机来执行的。


image.png image.png

windows、mac、Linux中的jdk版本不同

image.png

二、JVM还支持哪些语言(Kotlin、Groovy、JRuby、Jython、Scala)

Java独具匠心的提供了一种可以在所有平台上都能使用的一种中间代码——字节码(ByteCode)。有了字节码,无论是哪种平台(如Windows、Linux等),只要安装了虚拟机,都可以直接运行字节码。目前Java虚拟机已经可以支持很多除Java语言以外的语言了,如Kotlin、Groovy、JRuby、Jython、Scala等。之所以可以支持,就是因为这些语言也可以被编译成字节码。

Kotlin

image.png

Kotlin

盘点运行在JVM下的其他9种语言

上一篇下一篇

猜你喜欢

热点阅读