java基础:栈内存和堆内存

一:概念

Java编程语言把内存分成两种,一种叫做栈内存,一种叫做堆内存。

Java的堆是一个运行时数据区,类的对象从中分配空间。这些对象通过new指令建立,它们不需要程序代码来显式的释放。堆是由垃圾回收来负责的,堆的优势是可以动态地分配内存大小,生存期也不必事先告诉编译器,因为它是在运行时动态分配内存的,Java的垃圾收集器会自动收走这些不再使用的数据。但缺点是,由于要在运行时动态分配内存,存取速度较慢。

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

二:实例

运行结果:每天告诉自己我很棒!

java基础:栈内存和堆内存

相关文章:

你感兴趣的文章:

标签云: