java常见面试题及答案11-20(JVM) .pdfVIP

  • 1
  • 0
  • 约4.79千字
  • 约 3页
  • 2023-10-19 发布于河南
  • 举报
java常见⾯试题及答案11-20 (JVM) 11.JVM内存分哪⼏个区,每个区的作⽤是什么? java虚拟机主要分为以下⼀个区: ⽅法区: 1. 有时候也成为永久代,在该区内很少发⽣垃圾回收,但是并不代表不发⽣GC,在这⾥进⾏的GC主要是对⽅法区⾥的常量池和对类 型的卸载 2. ⽅法区主要⽤来存储已被虚拟机加载的类的信息、常量、静态变量和即时编译器编译后的代码等数据。 3. 该区域是被线程共享的。 4. ⽅法区⾥有⼀个运⾏时常量池,⽤于存放静态编译产⽣的字⾯量和符号引⽤。该常量池具有动态性,也就是说常量并不⼀定是编译 时确定,运⾏时⽣成的常量也会存在这个常量池中。 虚拟机栈: 1. 虚拟机栈也就是我们平常所称的栈内存,它为java⽅法服务,每个⽅法在执⾏的时候都会创建⼀个栈帧,⽤于存储局部变量表、操作 数栈、动态链接和⽅法出⼝等信息。 2. 虚拟机栈是线程私有的,它的⽣命周期与线程相同。 3. 局部变量表⾥存储的是基本数据类型、returnAddress类型(指向⼀条字节码指令的地址)和对象引⽤,这个对象引⽤有可能是指 向对象起始地址的⼀个指针,也有可能是代表对象的句柄或者与对象相关联的位置。局部变量所需的内存空间在编译器间确定 4.操作数栈的

文档评论(0)

1亿VIP精品文档

相关文档