JAVA的JVM的内存可分为3个区:堆(heap)、栈(stack)和方法区(method)

堆区: 
1.存储的全部是对象,每个对象都包含一个与之对应的class的信息。(class的目的是得到操作指令) 
2.jvm只有一个堆区(heap)被所有线程共享,堆中不存放基本类型和对象引用,只存放对象本身 
栈区: 
1.每个线程包含一个栈区,栈中只保存基础数据类型的对象和自定义对象的引用(不是对象),对象都存放在堆区中 
2.每个栈中的数据(原始类型和对象引用)都是私有的,其他栈不能访问。 
3.栈分为3个部分:基本类型变量区、执行环境上下文、操作指令区(存放操作指令)。

一个栈内存只能引用一个堆内存空间,但是一个堆内存空间可以被多个栈内存所共同指向

方法区: 
1.又叫静态区,跟堆一样,被所有的线程共享。方法区包含所有的class和static变量。 
2.方法区中包含的都是在整个程序中永远唯一的元素,如class,static变量。

原文:http://blog.csdn.net/kkluxklan/article/details/7371243

最新文章

  1. Android之AnimationDrawable初识
  2. 原生JS中apply()方法的一个值得注意的用法
  3. ajax 另外两种返回类型(json xml)
  4. Windows Phone 开发——相机功能开发
  5. Class Methods & Variables
  6. vim molokai配色方案(调过)
  7. 端午小长假--前端基础学起来04CSS选择器
  8. Linux下ThinkPHP网站目录权限设置
  9. 利用 SQL Monitor 查看语句运行状态步骤
  10. 初识Sencha Touch:面板Panel
  11. HDU 4643 GSM 简单计算几何
  12. Dojo API中文 Dojo内容模块概览,初学者
  13. 【转载】java 中变量的存储位置
  14. Atcoder Beginner Contest 124 解题报告
  15. Matlab 如何/怎样 读取图片 显示图片 转换成灰度图
  16. Javascript htmldecode
  17. react之异步请求数据,render先行渲染报错,未拿到数据
  18. nodejs安装淘宝npm镜像【cnpm】
  19. poj 1236 强联通分量
  20. DOTWeen 使用

热门文章

  1. 【Codeforces 484A】Bits
  2. 【Codeforces 486C】Palindrome Transformation
  3. codeforces gym 100357 I (费用流)
  4. Ubuntu 16.04开机进入命令行(tty1)+分辨率调节+字体颜色设置+中文乱码解决(解决虚拟终端Ctrl+Alt+F1分辨率太大)
  5. angularjs中比较实用的multipleselect选择框
  6. symfony2笔记
  7. android自己定义控件系列教程-----仿新版优酷评论剧集卡片滑动控件
  8. Kafka实战:如何把Kafka消息时延秒降10倍
  9. 2015南阳CCPC D - Pick The Sticks 背包DP.
  10. Excel 常用快捷键键 快捷方式