语言无关性正在越来越被开发者所重视。
到目前为止,或许大部分程序员都还认为Java虚拟机执行Java程序是一件理所当然和天经地义的事情。但是在java发展之初,设计者就曾经考虑过并实现了让其它语言运行在Java虚拟机之上的可能性。并且在1997年发布的第一版Java虚拟机规范中就i曾经承诺锅(在未来,我们会对Java虚拟机进行适当的扩展,以便更好的支持其他语言运行于JVM之上),JDK1.7开始就是兑现了这个承诺
时至今日,商业机构和开源机构已经在Java语言之外发展出一大堆在Java虚拟机之上运行的语言,如Clojure、Groovy、JRuby、Jython、Scala等。
实现语言无关性的基础仍然是虚拟机和字节码存储格式。
Java虚拟机不和包括Java在内的任何语言绑定,它只与“Class文件”这种特定的二进制文件格式所关联,Class文件中包含了Java虚拟机指令集和符号表已经若干其他辅助信息。