🗒️JVM 如何管理内存
2017-9-13
| 2024-8-22
字数 326阅读时长 1 分钟
type
status
date
slug
summary
tags
category
icon
password
comment
update_time
Aug 22, 2024 06:58 AM
create_time
Aug 22, 2024 06:50 AM

JVM 如何管理内存,分成几个部分?分别有什么用途?

  • JVM 内存分为 “”、“” 和 “方法区” 三个区域,分别用于存储不同的数据。
    • 堆内存用于存储使用 new 关键字所创建的对象;
    • 栈内存用于存储程序运行时在方法中声明的所有的局部变量;
    • 方法区用于存放类的信息,Java 程序运行时,首先会通过类装载器载入类文件的字节码信息,经过解析后将其装入方法区。类的各种信息(包括方法)都在方法区存储。

说出下面代码的内存实现原理:

以上代码的内存实现原理为:
  1. Foo 类首先被装载到 JVM 的方法区,其中包括类的信息,包括方法和构造等。
  1. 在栈内存中分配引用变量 foo
  1. 在堆内存中按照 Foo 类型信息分配实例变量内存空间;然后,将栈中引用 foo 指向 foo 对象堆内存的首地址。
  1. 使用引用 foo 调用方法,根据 foo 引用的类型 Foo 调用 f 方法。
  • Java
  • 抽象类和接口的对比Java 重写重载的区别
    Loading...