Java语言的一个非常重要的特点就是与平台的无关性。而使用Java虚拟机是实现这一特点的关键。
一般的高级语言如果要在不同的平台上运行,至少需要编译成不同的目标代码。...JVM作为一款虚拟机,也必然要涉及计算机核心的3大功能。
1、方法调用
方法作为程序组成的基本单元,作为原子指令的初步封装,计算机必须能够支持方法的调用。...同样,Java语言的原子指令是字节码,Java方法是对字节码的封装,因此JVM必须支持对Java方法的调用。
2、取指
这里的"取指",是指取出指令。...Jaa方法也不例外,因此JM进入Java方法后,也要能够模拟硬件CPU,能够从Java方法中逐条取出字节码指令。
3、运算
计算机取岀指令后,就要根据指令进行相应的逻辑运算,实现指令的功能。...JVM作为虚拟机,也需要具备对Java字节码的运算能力。
下面重点分析JVM如何从内部调用Java方法:
如何进行方法调用?