堆、栈、静态存储区
2018-03-09 10:34
85 查看
java中堆(heap)、栈(stack)、存储区一、特点1、栈:(1)优点: 存取速度比堆要快,仅次于直接位于CPU中的寄存器(2)缺点:存在栈中的数据大小与生存期必须是确定的,缺乏灵活性。(3)先进后出,栈数据在多个线程或者多个栈之间是不可以共享的。2、堆:(1)优点:动态地分配内存大小,生存期也不必事先告诉编译器,Java的垃圾收集器会自动收走这些不再使用的数据。(2)缺点:在运行时动态分配内存,存取速度较慢。3、存储区1.包含静态存储区,跟堆一样,被所有的线程共享。方法区包含所有的class和static变量。2.包含常量存储区(常量池),存储被final修饰的量。由于string的值都被final修饰,所以string是存储在常量池中。
总的来说:堆:基本数据类型(基本数据类型的包装类),数组栈:new出来的对象方法区:字符串,被final修饰的,被static修饰的
总的来说:堆:基本数据类型(基本数据类型的包装类),数组栈:new出来的对象方法区:字符串,被final修饰的,被static修饰的
相关文章推荐
- 静态存储区、堆和栈的区别
- C++,java等高级语言的内存分配方式详解——堆、栈、自由存储区、全局/静态存储区和常量存储区
- C++ 堆、栈、自由存储区、全局/静态存储区和常量存储区
- C++堆、栈、自由存储区、全局/静态存储区和常量存储区(转)
- (转)关于栈、堆、静态存储区最大可分配大小的探讨 --海量之一
- C++内存分配方式 ——堆、栈、自由存储区、全局/静态存储区和常量存储区
- C++变量的存储类别(动态存储、静态存储、自动变量、寄存器变量)
- C++ 静态二维数组与new出来的动态二维数组,存储结构的差别
- C++堆、栈、自由存储区、全局/静态存储区和常量存储区(非常全)
- linux面试之--堆、栈、自由存储区、全局/静态存储区和常量存储区
- 研究具有静态存储时期的变量的初始化时间
- 常量字符串位于静态存储区
- C++,静态区,动态区,以及存储方式!
- 内存的基本够成 堆区 栈区 静态存储区
- C++内存分配方式详解——堆、栈、自由存储区、全局/静态存储区和常量存储区
- C++内存分配方式详解——堆、栈、自由存储区、全局/静态存储区和常量存储区
- 栈、堆、静态存储(转自http://blog.itpub.net/16856446/viewspace-612834)
- 前端性能优化:网络存储的静态缓存和非必要内容优化
- C++内存分配方式详解——堆、栈、自由存储区、全局/静态存储区和常量存储区
- 【分享】全局字符串转换为局部变量存储防止软件被静态分析暴露敏感字符串