1. 程式人生 > >jvm內存區域重點概要

jvm內存區域重點概要

指示器 native 常量池 ive error erro 靜態變量 nbsp 分類

前言

jvm不論對於進階高級java工程師來說,還是對於面試而言都是至關重要的,那麽我們就來看一下jvm內存區域劃分。

1.jvm的內存區域分類

jvm內存區域分為:堆,虛擬機棧,本地方法棧,方法區,程序計數器五大區域。

2.堆內存:

  • 存放實例變量,new出來的對象
  • 垃圾回收區回收的主要區域;
  • 位於線程共享區;
  • 可能會發生OutOfMemoryError;

3.虛擬機

  • 存放基本類型變量;
  • 可能會發生StackOverflowError和OutOfMemoryError;

4.本地方法棧

  • 執行native方法;

5.方法區

  • 存放虛擬機加載的類信息,常量,靜態變量,即時編譯器編譯後的代碼;
  • 包含常量池;

6.程序計數器

  • 當前線程所執行的字節碼的行號指示器;
  • 唯一不會發生OutOfMemoryError的區域;

具體的可以參考《深入了解java虛擬機這本書》,內容過於枯燥,更多的是一些概念性的東西,需要多多實踐才能記住。

jvm內存區域重點概要