您的位置:首页 > 理论基础

堆、栈、静态存储区

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修饰的
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐