棧(Stack)
- 存放的都是方法中定義的局部變量
- 局部變量: 方法的參數,或者是方法體中定義的變量
- 方法都在棧中運行
堆(Heap)
- 凡是new出來的東西都在堆中存放
- 堆裏面存放的東西都有地址值
- 堆內存的數據都有默認值
- 如果是整數,默認爲0 (byte/short/int/long)
- 如果是浮點數,默認爲0.0(double/float)
- 如果是字符,默認爲 ‘\u0000’
- 如果是布爾,默認爲false
- 如果是引用類型,默認爲null
方法區(Method Area)
存儲.class相關信息,包含方法的信息
本地方法棧(Native Method Stack)
與操作系統相關
寄存器(Register)
與cpu相關