Java学习

29

Java中堆内存和栈内存

1.Java中的栈内存:在函数中定义的一些基本数据类型的变量(比如int, short, long, byte, float, double, boolean, char)和对象的引用变量都是在栈内存中分配的。

释放:当超过变量的作用域之后,Java就会自动释放掉栈内存,然后另作他用。

2.Java中的堆内存:由new创建的对象和数组都是在堆内存中分配的。

释放:由Java虚拟机垃圾回收机制进行回收。

在堆中产生一个数组或者对象之后,还可以在栈中定义一个特殊变量,这个变量的取值等于堆内存中的数组或者对象的首地址。栈中的这个变量就成了数组或者对象的引用变量。

posted on 2021-08-16 21:39  学习的CYT  阅读(27)  评论(0)    收藏  举报