堆和栈
来源:互联网 发布:麦多商城系统源码 编辑:程序博客网 时间:2024/04/27 23:34
堆和栈都是Java用来在内存中存放数据的地方。
堆
类的实例化对象都是在堆上分配内存空间的,通过new指令实现。
String str = new String( "abc" );
Java中,堆的释放是由垃圾回收机制来负责处理。垃圾收集器会自动回收不再使用的内存空间。
在运行时,堆是动态分配内存空间的,所以内存存取速度比较慢。
栈
栈中主要存放一些基本数据类型。
栈有一个特性,就是“数据共享”。
比如定义两个变量:
int a = 5;int b = 5;
JVM处理int a = 5时,首先在栈上创建一个变量为a的引用,然后去查找栈上是否还有5这个值,如果没有找到,那么就将5存放进来,然后将a指向5.
接着处理int b = 5,在创建完b的引用后,因为在栈中已经有5这个值,便将b直接指向5。于是就出现了a,b同时指向5的内存地址。
- 堆、栈和本地堆
- 什么是堆和栈
- 堆和栈
- "堆"和"栈"
- "堆"和"栈"
- 堆和栈
- 堆和栈
- 堆和栈
- 堆和栈
- 栈和堆
- 堆、栈和堆栈
- zz堆和栈
- 堆和栈
- 堆和栈
- 栈和堆
- 堆和栈
- 堆和栈
- 转:堆和栈
- 通过Keepalived实现Redis Failover自动故障切换功能
- free野指
- BSD Socket的收发数据函数介绍
- linux平台下arp欺骗的实现
- 当路町-网络下载应用系列之二-破解网页内容无法复制
- 堆和栈
- cp命令的实现
- 第十二次上机
- dede 判断字段空值 不显示&显示别的字段
- 重装Windows后丢失Linux启动引导怎么办?
- zen-cart图片放大效果图插件、zencart放大镜:JQZoom IH2 JQLightBox AJAX
- dedecms直接访问域名
- c#解决应用池自动回收的方法
- OPENHW大赛,跟同学讨论后的备忘笔记