美文网首页
Java(一)面向对象--02Java平台无关性?

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

作者: young十三 | 来源:发表于2019-10-30 11:10 被阅读0次

    一、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种语言

    相关文章

      网友评论

          本文标题:Java(一)面向对象--02Java平台无关性?

          本文链接:https://www.haomeiwen.com/subject/leqovctx.html