JVM内存模型理解:Java内存分配机制实例解析 原创 川长思鸟来 2024-11-15 20:27 1阅读 0赞 Java的内存模型主要包括堆(Heap)和栈(Stack)两部分,以及局部变量区、方法区等。 1. 堆(Heap): - 堆是线程共享的,主要用于存储对象。 - 存储结构:根节点(GC Root)+ survivor space + eden space。 2. 栈(Stack): - 栈是每个线程独有的,主要用来存储基本数据类型和对象引用信息。 - 存储过程:局部变量区+方法调用栈。 3. 其他区域: - 方法区(如老年代、永久代等):主要用于存放类的元数据以及被垃圾回收的不再使用的对象数据。 实例解析:例如一个简单的Java代码: ```java public class Test { int num = 10; public static void main(String[] args) { Test t = new Test(); // 这里会将对象t压入栈中 System.out.println(t.num); } } ``` 在这个例子中,`Test`类的实例被创建并压入栈(main方法中的`t`变量)。然后,通过`System.out.println(t.num);`打印出对象属性,这表明对象数据存储在内存模型的堆区域。 文章版权声明:注明蒲公英云原创文章,转载或复制请以超链接形式并注明出处。
还没有评论,来说两句吧...