堆和栈存放的内容
棧中的數(shù)據(jù)大小和生命周期是可以確定的,當沒有引用指向數(shù)據(jù)時,這個數(shù)據(jù)就會消失。堆中的對象的由垃圾回收器負責回收,因此大小和生命周期不需要確定,具有很大的靈活性。
棧:
- 基本類型的變量數(shù)據(jù)
- 對象的引用
堆:
- 存放所有new出來的對象
常量池:
- 字符串變量
- 基本類型常量
Java8 元空間
原文鏈接:https://blog.csdn.net/u010588262/article/details/81365547
方法區(qū)也是所有線程共享。主要用于存儲類的信息、常量池、方法數(shù)據(jù)、方法代碼等。
方法區(qū)是JVM 的規(guī)范,永久代(PermGen space)是HotSpot對這種規(guī)范的實現(xiàn)。
在 JDK 1.8 中, HotSpot 已經(jīng)沒有 “PermGen space”這個區(qū)間了,取而代之的是 Metaspace(元空間)。
元空間的本質(zhì)和永久代類似,都是對JVM規(guī)范中方法區(qū)的實現(xiàn)。不過元空間與永久代之間最大的區(qū)別在于:元空間并不在虛擬機中,而是使用本地內(nèi)存。因此,默認情況下,元空間的大小僅受本地內(nèi)存限制,但可以通過以下參數(shù)來指定元空間的大小:
總結
- 上一篇: Kubernetes集群安全概述
- 下一篇: 集合(Collection和Map)