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++程序員需要學體系結構與編譯原理?“

補充

後續文章多是學習過程的整理,同時會分門別類的收錄到我的個人知識圖譜中。有轉載或者引用的地方都會標明出處。
發佈了217 篇原創文章 · 獲贊 1200 · 訪問量 84萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章