Java_内存分区堆(heap) 栈(stack)和方法区(method)
来源:互联网 发布:unity3d 2d精灵动画 编辑:程序博客网 时间:2024/05/28 01:35
本博文为子墨原创,转载请注明出处!
http://blog.csdn.net/zimo2013/article/details/8913425
JAVA的JVM的内存可分为3个区:堆(heap)、栈(stack)和方法区(method)
1.堆区(heap)
(1).存储的全部是对象实体,每个对象都包含一个与之对应的class的信息。(class的目的是得到操作指令);
(2).jvm只有一个堆区(heap)被所有线程共享,堆中不存放基本类型和对象引用,只存放对象本身;
(3).对象实体的数据可以不初始化,设置为默认值,而栈区则不同.
2.栈区(stack)
1).每个线程包含一个栈区,栈中只保存基础数据类型的对象和自定义对象的引用(不是对象),对象都存放在堆区中
2).每个栈中的数据(原始类型和对象引用)都是私有的,其他栈不能访问。
3).栈区定义的基本数据类型int i; 可以这样定义,但是如果想使用i,必须对i进行初始化!
3.方法区(method)
跟堆一样,被所有的线程共享,方法区包含所有的class和static变量(类信息和静态变量信息)。类文件是由加载器进行过滤后加载至内存空间,而加载进来的也是Class的实例对象。
疑问:有上面可知实例对象是存储于堆区,而该Class实例对象却加载至方法区,其中必然有一种关联,现在还不明白具体原因,待以后解决!参考这个>>
- Java_内存分区堆(heap) 栈(stack)和方法区(method)
- JVM 内存 (堆(heap)、栈(stack)和方法区(method) )
- JVM 内存 (堆(heap)、栈(stack)和方法区(method) )
- JVM 内存 (堆(heap)、栈(stack)和方法区(method) )
- JVM 内存初学 (堆(heap)、栈(stack)和方法区(method) )
- JVM 内存初学 (堆(heap)、栈(stack)和方法区(method) )
- JVM 内存初学 (堆(heap)、栈(stack)和方法区(method) )
- JVM 内存初学 (堆(heap)、栈(stack)和方法区(method) )
- JVM 内存初学 (堆(heap)、栈(stack)和方法区(method) )
- JVM 内存初学 (堆(heap)、栈(stack)和方法区(method) )
- JVM 内存初学 (堆(heap)、栈(stack)和方法区(method) )
- JVM 内存初学 (堆(heap)、栈(stack)和方法区(method) )
- JVM 内存初学 (堆(heap)、栈(stack)和方法区(method) )
- JVM 内存初学 (堆(heap)、栈(stack)和方法区(method) )
- JVM 内存初学 (堆(heap)、栈(stack)和方法区(method) )
- JVM 内存初学 (堆(heap)、栈(stack)和方法区(method) )
- JVM 内存初学 (堆(heap)、栈(stack)和方法区(method) )
- JVM 内存初学 (堆(heap)、栈(stack)和方法区(method) )
- 再探Connection Reset By Peer
- The VPN client agent was unable to create the interprocess communication depot
- MATLAB中Legend的一些控制方法
- Google C++ Style
- 2013年4月工作小结 -- 穿越前的回眸
- Java_内存分区堆(heap) 栈(stack)和方法区(method)
- WinCE系统下BootLoader的开发
- Oracle trunc()函数的用法
- Windows CE环境下无线网卡的自动安装
- 撰写毕业论文中word公式编辑器的学习使用(二)——公式编辑器
- 关于 数据源 导出excel (这是) 通过 画一个html 实现的、最简单、好理解、的代码、
- 基于Windows CE的SPI驱动程序设计
- abort(),exit()和assert()
- c++和java(c#)之间的pk