java程序运行内存分析

栈:

    1.    每个线程私有,不能实现线程间的共享!

    2.    局部变量放置于栈中。

    3.    栈是由系统自动分配,速度快!栈是一个连续的内存空间!

堆:

    1.    放置new出来的对象!

    2.    堆是一个不连续的内存空间,分配灵活,速度慢!

方法区(也是堆)

    1.    被所有线程共享!

    2.    用来存放程序中永远是不变或唯一的内容。(类代码信息、静态变量、字符串常量)。


java程序运行内存分析


java程序运行内存分析