计算机高级语言程序的执行方式可分为编译型和解释型两种
一、编译型语言
编译型是指使用专门的编译器,针对特定的平台将
程序的源代码一次性编译成平台能执行的程序格式。编
译生成的可执行性程序可以脱离开发环境,独立的运行
在特定的平台。因为编译型语言程序是一次性编译成特
定平台的机器码,所以编译完成的机器码通常不能移植
到其他平台运行,必须将源代码复制到特定的平台,采
用特定平台的编译器重新编译。现C C++ OC Pascal
等都是编译型语言
二、解释型语言
解释型语言是指使用专门的解释器对源程序逐行进行
解释成特定平台的机器码并立即执行的语言。可以认
为每次执行解释性语言都要进行一次编译,因此解释
型语言运行效率通常较低,也不能脱离解释器独立运
行,现Ruby Python JavaScript等都是解释型语言
三、java程序的运行机制
java语言比较特殊,由于java 语言写的程序需要经过
编译步骤,但又 不会一次性生成特定平台能执行的
机器码,而是生成一种与平台无关的字节码(.class
文件)这种字节码不是可直接执行的,必须通过java
解释器(JVM)来解释执行。所以java语言可以说即是
编译型又是解释型语言。java程序必须经过先编译后
解释两个步骤。
四、Java 虚拟机(JVM)
Java 虚拟机(JVM)负责解释执行java程序编译完的字
节码(.class文件)。Java 编译程序时生成的是与平台
无关的字节码,这些字节码不面向任何特定的平台,
只面向JVM。不同平台上的JVM都不同,但他们都提
供了能解释.class文件的接口,所以JVM是java 跨平
台的关键部分。
注:文章摘抄于《Java疯狂讲义》。
五、Android 平台虚拟机
贴篇别人博客以便日后查阅http://blog.csdn.net/seu_calvin/article/details/52354964