基本信息
文件名称:jvm面试试题及答案.doc
文件大小:27 KB
总页数:9 页
更新时间:2025-06-08
总字数:约3.22千字
文档摘要

jvm面试试题及答案

一、单项选择题(每题2分,共10题)

1.在JVM中,以下哪个区域用于存储对象实例?()

A.程序计数器

B.虚拟机栈

C.堆

D.方法区

答案:C

2.JVM运行时数据区不包括以下哪个?()

A.本地方法栈

B.直接内存

C.堆

D.程序计数器

答案:B

3.下面哪种垃圾回收算法会产生内存碎片?()

A.标记-整理算法

B.复制算法

C.标记-清除算法

D.分代收集算法

答案:C

4.以下哪个参数可以设置JVM的堆大小?()

A.-Xmx

B.-Xss

C.-XX:PermSize

D.-XX:NewRatio

答案:A

5.在JVM中,方法区也被称为()。

A.永久代(Java8之前)

B.元空间(Java8及之后)

C.两者都是

D.两者都不是

答案:C

6.以下关于JVM栈的说法错误的是()。

A.每个线程都有自己独立的JVM栈

B.栈帧随着方法调用而创建,随着方法结束而销毁

C.栈中存储的是基本数据类型和对象引用

D.栈的大小是固定的,不能动态扩展

答案:D

7.垃圾回收器在回收对象之前,需要调用对象的()方法。

A.finalize()

B.hashCode()

C.equals()

D.clone()

答案:A

8.以下哪种情况会导致栈内存溢出?()

A.递归调用层数过深

B.堆中创建大量对象

C.方法区内存不足

D.本地方法调用过多

答案:A

9.在JVM中,负责加载字节码文件的是()。

A.类加载器

B.执行引擎

C.垃圾回收器

D.本地方法接口

答案:A

10.以下哪个不是JVM的调优目标?()

A.减少GC停顿时间

B.增加内存占用量

C.提高系统吞吐量

D.避免内存泄漏

答案:B

二、多项选择题(每题2分,共10题)

1.以下属于JVM堆的分代的有()。

A.新生代

B.老年代

C.永久代(Java8之前)

D.元空间(Java8及之后)

答案:AB

2.以下关于JVM垃圾回收的说法正确的有()。

A.垃圾回收是自动进行的,不需要程序员手动干预

B.不同的垃圾回收器适用于不同的场景

C.垃圾回收会影响程序的性能

D.程序员可以精确控制垃圾回收的时间

答案:ABC

3.下面哪些是JVM的启动参数类型?()

A.标准参数

B.-X参数

C.-XX参数

D.-D参数

答案:ABC

4.以下关于JVM类加载机制的说法正确的有()。

A.类加载过程包括加载、验证、准备、解析、初始化

B.双亲委派模型是类加载器的一种实现方式

C.自定义类加载器可以打破双亲委派模型

D.同一个类只会被加载一次

答案:ABCD

5.以下哪些属于JVM的运行时数据区?()

A.堆

B.虚拟机栈

C.本地方法栈

D.程序计数器

答案:ABCD

6.以下关于JVM栈帧的组成部分正确的有()。

A.局部变量表

B.操作数栈

C.动态连接

D.方法返回地址

答案:ABCD

7.以下哪些情况会触发FullGC?()

A.老年代空间不足

B.调用System.gc()方法(不一定执行)

C.新生代晋升到老年代时空间不足

D.元空间(Java8及之后)不足

答案:ABCD

8.以下关于JVM内存模型的说法正确的有()。

A.不同JVM实现的内存模型可能存在差异

B.内存模型主要是为了解决多线程并发访问共享数据的问题

C.保证了变量在不同线程中的可见性和有序性

D.遵循happens-before原则

答案:ABCD

9.以下哪些是JVM中常见的垃圾回收器?()

A.Serial收集器

B.Parallel收集器

C.CMS收集器

D.G1收集器

答案:ABCD

10.以下关于JVM性能调优的工具正确的有()。

A.jstat

B.jmap

C.jstack

D.VisualVM

答案:ABCD

三、判断题(每题2分,共10题)

1.在JVM中,所有对象都