堆内存的作用是什么?

21小时前 (02:10:54)阅读2回复0
xxhh
xxhh
  • 管理员
  • 注册排名4
  • 经验值36510
  • 级别管理员
  • 主题7302
  • 回复0
楼主

堆内存用来存放由 new 创建的对象和数组,在堆平分配的内存,由 Java 虚拟机的主动垃圾收受接管器来办理。在堆中产生了一个数组或者对象之后,还能够在栈中定义一个特殊的变量,让栈中的那个变量的取值等于数组或对象在堆内存中的首地址,栈中的那个变量就成了数组或对象的引用变量,以后就能够在法式中利用栈中的引用变量来拜候堆中的数组或者对象,引用变量就相当于是为数组或者对象起的一个名称。引用变量是通俗的变量,定义时在栈平分配,引用变量在法式运行到其感化域之外后被释放。而数组和对象自己在堆平分配,即便法式运行到利用 new 产生数组或者对象的语句所在的代码块之外,数组和对象自己占据的内存不会被释放,数组和对象在没有引用变量指向它的时候,才变成垃圾,不克不及在被利用,但仍然占据内存空间不放,在随后的一个不确定的时间被垃圾收受接管器收走(释放掉)。

希望我的答复能够帮到你。

0
回帖

堆内存的作用是什么? 期待您的回复!

取消