首页 > 代码库 > Java 内存分配
Java 内存分配
JVM内存区域模型:
* 程序计数器,内存区域极小,是当前线程的字节码执行行号指示器;
* 虚拟机栈、本地方法栈,即平时所说的“栈”,是虚拟机用来执行方法(包括Java、非Java方法)时,使用的临时内存空间,用来存储当前方法、局部变量等,全部基本类型变量,以及类对象的引用都存储在栈中;
* 方法区,全局共享区域,用来存储已经被虚拟机加载的Class信息、常量(如字符串字面常量)、静态变量,以及编译器编译后的代码等;
* 堆,是Java虚拟机管理中最大的一块内存,为所有线程所共享,用来存储所有Java类实例。需要注意的是,实例数据在堆中开辟内存,而对象的引用相当于指针,存储在各线程的栈中。
创建一个对象
Person person1=new Person("John",20);
1.在栈内存中Person person1=null;
2.在堆内存中new Person("John",20);
3初始化,person1的引用指针(指针在栈中)指向堆内存中的new Person("John",20);
==================================================
http://blog.csdn.net/yangyuankp/article/details/7651251
Java 内存分配
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。