Java 中栈内存和堆内存的区别

来源:互联网 发布:日本股票行情查看软件 编辑:程序博客网 时间:2024/06/06 01:33

堆内存用来存放由new创建的对象和数组。

的优势是可以动态的分配内存大小,生存期也不必事先告诉编译器,因为它是在运行时动态分配内存的,Java的垃圾收集器会自动的收走这些不再使用的数据。但缺点是,由于要在运行时动态分配内存,存取速度较慢。

 

的优势是,存取速度比堆要快,仅次于寄存器,栈数据可以共享。缺点是,存在栈中的数据大小与生存期必须是确定的,缺乏灵活性。

0 0