Java的內(nèi)存需要劃分成為五部分:
1、棧(Stack):存放的都是方法中的局部變量,方法的運行一定要在棧中運行。
? ? ? 局部變量:方法的參數(shù)或者是方法體內(nèi)部的變量
? ? ? 作用域:一旦超出作用域,立即從棧內(nèi)存中消失。
2、堆(Heap):凡是new出來的東西,都在堆當中。
? ? ? 堆內(nèi)存里面的東西都有一個地址:十六進制。
? ? ? 堆內(nèi)存中的數(shù)據(jù)都有默認值,規(guī)則如下:
? ? 整數(shù):默認為0
? ? 浮點數(shù):默認為0.0
? ? 字符:默認為'/u0000'
? ? 布爾:默認為false
? ? 引用類型:默認為null
3、方法區(qū):存儲.class相關信息,包含方法的信息。
4、本地方法棧(Method Area):與操作系統(tǒng)相關。
5、寄存器(pc Register):與CPU相關。
eg:

舉例1