JVM属于Java开发者技术的分水岭,想要理解Java语言,你就必须熟悉JVM。
学习JVM对于一个Java程序员的好处大概可以概括为下几点:
-
你能够明白为什么Java最早期被称为解释型语言,而后来为什么又被大家叫做解释与编译并存的语言(了解JVM中解释器以及即时编译器就可以回答这个问题);
-
你能够理解动态编译与静态编译的区别,以及动态编译相对于静态编译到底有什么好处(JVM JIT);
- 你能够利用一些工具,jmap, jvisualvm, jstat, jconsole等工具可以辅助你观察Java应用在运行时堆的布局情况,由此你可以通过调整JVM相关参数提高Java应用的性能;
- 可以清楚知道Java程序是如何执行的;
- 可以明白为什么Java等高级语言具有可移植性强的特性。 其实这个问题相当于“为什么C/C++程序员需要学体系结构与编译原理?“
通过理论和剖析原理的方式让你入门JVM技术,节省你的学习时间和提高你的学习效率。