JVM的优点:
1.实现write once,run anywhere
2.自动垃圾回收
3.数组下标越界检查
4.多态
比较:
JVM JRE JDK
JVM:java虚拟机
JRE:java运行时环境
java编译过程
java源码被编译成java二进制码。
再通过类加载器(classloader)加载到JVM。
方法区加载类,堆区存放实例对象,实例对象在调用类中方法时,用到虚拟机栈和程序计数器以及本地方法栈。
对象中的方法中的代码,由解释器逐行执行。
方法中的热点代码(经常被用的代码)会被即时编译器执行。
堆中不再被引用的对象会被垃圾回收。
java代码不方便实现的功能借助本地方法接口实现。