Java工程师必知词汇:JVM-阿里云开发者社区

开发者社区> Java开发者> 正文

Java工程师必知词汇:JVM

简介: Java虚拟机(Java Virtual Machine,缩写为JVM),一种能够运行Java bytecode的虚拟机,以堆栈结构机器来进行实做。最早由Sun所研发并实现第一个实现版本,是Java平台的一部分,能够运行以Java语言写作的软件程序。

|名词定义|


Java虚拟机(Java Virtual Machine,缩写为JVM),一种能够运行Java bytecode的虚拟机,以堆栈结构机器来进行实做。最早由Sun所研发并实现第一个实现版本,是Java平台的一部分,能够运行以Java语言写作的软件程序。

Java虚拟机有自己完善的硬体架构,如处理器、堆栈、寄存器等,还具有相应的指令系统。JVM屏蔽了与具体操作系统平台相关的信息,使得Java程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。通过对中央处理器(CPU)所执行的软件实现,实现能执行编译过的Java程序码(Applet与应用程序)。
作为一种编程语言的虚拟机,实际上不只是专用于Java语言,只要生成的编译文件符合JVM对加载编译文件格式要求,任何语言都可以由JVM编译运行。此外,除了Oracle,也有其他开源或闭源的实现。

|JVM的实现|


由于JVM并不是专为Java所实现的运行时,实际上只要有其他编程语言的编译器能生成正确Java bytecode文件,则这个语言也能实现在JVM上运行。
以下为原生就在JVM上实现运行的语言:
• BBj
• BeanShell
• Ceylon
• Clojure
• Fantom
• Groovy
• Java
• Kotlin
• MIDletPascal
• Scala
• Xtend
以下为实现了相应的JVM编译器的语言及其编译(解释)器,意味着下列语言可以使用基于Java开发的编译器进行编译或解释:
• Erlang:Erjang
• JavaScript:Rhino
• Pascal:Free Pascal
• PHP:Quercus
• Python:Jython
• REXX:NetRexx
• Ruby:JRuby
• Scheme:Kawa
• Tcl:Jacl

|参考资料|


[1] 维基百科

版权声明:本文中所有内容均属于阿里云开发者社区所有,任何媒体、网站或个人未经阿里云开发者社区协议授权不得转载、链接、转贴或以其他方式复制发布/发表。申请授权请邮件developerteam@list.alibaba-inc.com,已获得阿里云开发者社区协议授权的媒体、网站,在转载使用时必须注明"稿件来源:阿里云开发者社区,原文作者姓名",违者本社区将依法追究责任。 如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件至:developer2020@service.aliyun.com 进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
+ 订阅

Java开发者成长课堂

官方博客
官网链接