Java JVM中的内存分配

JVM中的内存空间分为:方法区内存,栈内存,堆内存。它们的功能分别是

方法区内存:在类加载的时候,class字节码代码片段被加载到该内存空间中

栈内存(局部变量):方法 代码片段执行的时候,会给该方法分配内存空间,在栈内存中压栈

堆内存:new的对象在堆内存中存储

例如:Student  s  =    new   Student()

这里的s只是一个局部变量,存储的是在堆内存开辟的内存空间的地址。

--什么是对象?

  *new运算符在堆内存中开辟的内存空间称为对象

--什么是引用?

  *引用是一个变量,只不过这个变量中保存了另一个Java对象的内存地址。就像上面的局部变量s

 

Java语言当中,程序员不能直接操作堆内存,Java没有指针,不像C语言。在Java语言中,程序员只能通过“引用”去访问堆内存当中的对象

 

posted @ 2020-05-07 14:32  徐阶  阅读(193)  评论(0编辑  收藏  举报