JVM-为什么要学JVM

JVM-为什么要学JVM

简介

好久没有写博客了,先水一帖,也借此作为JVM学习笔记整理的一个开篇。

为什么要学

从知乎上贴两个回答过来来证明我的懒。

总有人问这个东西好像用不上,于是要不要学这样的问题. 然后又总有人担心一直搬砖成天做些重复没提升的东西.
于是这个逻辑就很有意思咯,一方面是工作上面学不到东西,一方面是不愿意学工作上用不到的东西.
其实前人已经早就说过了”功夫在诗外”这样的话,奈何我们总是太急.


如果你这辈子只甘心做一个平庸的Java码农,那么你完全没有必要去学习JVM相关的知识,学习JVM对于一个Java程序员的好处大概可以概括为下几点:

  1. 你能够明白为什么Java最早期被称为解释型语言,而后来为什么又被大家叫做解释与编译并存的语言(了解JVM中解释器以及即时编译器就可以回答这个问题);

  2. 你能够理解动态编译与静态编译的区别,以及动态编译相对于静态编译到底有什么好处(JVM JIT);

  3. 你能够利用一些工具,jmap, jvisualvm, jstat, jconsole等工具可以辅助你观察Java应用在运行时堆的布局情况,由此你可以通过调整JVM相关参数提高Java应用的性能;
  4. 可以清楚知道Java程序是如何执行的;
  5. 可以明白为什么Java等高级语言具有可移植性强的特性。 其实这个问题相当于“为什么C/C++程序员需要学体系结构与编译原理?“

补充

后续文章多是学习过程的整理,同时会分门别类的收录到我的个人知识图谱中。有转载或者引用的地方都会标明出处。

猜你喜欢

转载自blog.csdn.net/chenghuaying/article/details/56673439