JVM堆内存、方法区和栈内存的关系


以下代码展示Java堆内存、方法区和Java栈内存之间的关系

package cn.liang.jvm;
public class SimpleHeap {
	private int id;
	public SimpleHeap(int id){
		this.id = id;
	}
	public void show(){
		System.out.println("My ID is " + id);
	}
	public static void main(String[] args) {
		SimpleHeap s1 = new SimpleHeap(1);
		SimpleHeap s2 = new SimpleHeap(2);
		s1.show();
		s2.show();
	}

}

引用关系图:

  • SimpleHeap实例本身分配在堆内存中
  • 描述SimpleHeap类的信息存放在方法区
  • main()函数中s1和s2局部变量存放在Java栈内存中,并指向堆内存的两个实例


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM