本页面更新日期: 2016年05月31日
前言
JAVA 语言是一种特殊的高级语言, 它既具有解释型语言的特征, 也具有编译型语言的特征, 因为JAVA 程序要经过先编译, 后解释两个步骤
JAVA 程序的运行机制和JVM
JAVA 语言编写的程序需要经过编译步骤, 但这个编译步骤并不会生成特定平台的机器码, 而是生成一种与平台无关的字节码 (也就是 *.class 文件). 当然, 这种字节码不能直接运行, 必须使用JAVA 解释器来解释执行.
JAVA 语言里负责解释执行字节码文件的是 JAVA 虚拟机, 既 JVM (JAVA Virtual Machine).
我们举个现实中的例子, A是中国人, B是美国人. A写了一封信寄给B . 但是B看不懂中文, 所以叫了个翻译过来, 翻译成英语.
A 写信的过程就像 JAVA 中的编译.
B 找翻译的过程就是 JAVA 中的解释.
例子中的翻译 就是 JVM. 他会全世界所有语言. 所以拿着你的信, 翻译给谁, 谁都能懂.
所以说 JAVA 既是编译型语言, 也是解释型语言.你可能会问, 这不麻烦么?
那这种麻烦是为了什么? 为了平台的移植性. 你写的程序既可以在 Windows 上运行, 也可以在 linux 上 还有 苹果的 Mac 上运行. 看, 是不是麻烦变成了方便?自然的, 并不是所有编程语言都能像JAVA这样拥有如此的跨平台性.
不过咱们现在又不学其它的, 所以就不提了.
tips 小提示
即使你现在对跨平台这种概念还不熟悉, 也没有关系.
在经历后面的学习之后, 你慢慢就会明白其中的道理.
结尾
如果你想学习更多JAVA知识, 可以 点我进入目录页