- 你用的什么JVM(JVM虚拟机)? (HotSpot: 目前应用最官方,最主要的一款JVM虚拟机)
- 你了解市面上有哪些JVM? (HotSpot,JRockit,J9,Taobaovm,Dalvik)
- JDK,JRE,JVM之间是什么关系? (JDK>JRE>JVM)
- 你觉得下一代JVM的发展方向应该是怎样的? (支撑更多编程语言)
- JVM规范JVM由哪几部分构成? (类加载子系统, 运行时数据区,执行引擎,本地方法接口)
- 为什么我们要学习JVM?
第一:深入理解JVM可以帮助我们从平台角度提高解决问题的能力,例如:
1.有效防止内存泄露(MEmory leak)
2. 科学线程锁的使用(Thread Lock)
3.科学进行垃圾回收(Garbage collection)
6.提高系统吞吐量(throughput)
7. 降低延迟(Delay),提高其性能(performance)
基于JDK自带的工具对类进行编译、运行并查看字节码指令。
- 通过Javac编译源代码 (javac -d . HelloJVM.java)
- 通过Java指令运行class文件 (执行java pkg.HelloJVM)
- 通过Javap指令查看class文件内容 (进入pkg目录,然后执行javap -v HelloJVM.class)



