50+道大厂JVM面试题 + 11张思维导图就是让你懂JVM~

摘要:
43.JVM内存分哪几个区,每个区的作用是什么?

作者介绍

悟空
全栈攻城狮一枚,开发组长,自主开发了Java学习平台、PMP刷题小程序。目前主修Java多线程SpringBootSpringCloud

一、JVM大厂面试题

答案在Java刷题小程序查看

markimage-20200808000844570image-20200808000910767

01.JVM内存区域

02.JVM中的线程

03.JVM的栈中引用如何和堆中的对象产生关联

04.逃逸分析技术

05.常见GC算法

06.CMS垃圾回收过程,CMS的各个阶段哪两个是Stop the world的

07.讲一讲G1收集器

08.标记清除和标记整理算法的理解以及优缺点?

09.eden survivor区的比例,为什么是这个比例,eden survivor的工作过程?

10.JVM如何判断一个对象是否该被GC,可以视为root的都有哪几种类型?

11.Java是否可以GC直接内存?

12.强软弱虚引用的区别以及GC对他们执行怎样的操作?

13.Java类加载的过程?

14.双亲委派模型的过程以及优势?

15.JVM方法栈的工作过程,方法栈和本地方法栈有什么区别?

16.常用的JVM调优参数?

17.dump文件的分析?

18.对象分配规则?

19.解释内存中的栈(stack)、堆(heap)和静态区(static area)的用法

20.什么是类的加载?

21.如何⾃定义⼀个类加载器?你使⽤过哪些或者你在什么场景下需要?

22.Java对象创建过程?

23.类的生命周期?

24.垃圾收集器有哪几种?

25.如何判断一个对象是否应该被回收?

26.引用的分类?

27.调优命令

28.调优工具

29.Minor GC与Full GC分别在什么时候发生

30.你有没有遇到过OutOfMemory问题?你是怎么来处理这个问题的?处理过程中有哪些收获?

31.如果线上程序周期性地出现卡顿,你怀疑可 能是 GC 导致的,你会怎么来排查这个问题?

32.JDK1.8之后PermSpace有哪些变动?

33.StackOverflow异常有没有遇到过?⼀般你猜测会在什么情况下被触发?如何指定⼀个线程的堆栈⼤⼩?⼀般你们写多少?

34.内存模型以及分区, 需要详细到每个区放什么?

35.堆里面的分区Eden&survival(from+ to)&老年代各自的特点?

36.如和判断一个对象是否存活?

37.SafePoint是什么?

38.简述GC的三种收集方法标记清除、标记整理、复制算法的原理。

39.CMS收集器与G1收集器的特点?

40.Minor GC与Full GC分别在什么时候发生?

41.有哪几种常用的内存调试工具?

42.Java类加载的几个过程?

43.JVM 内存分哪几个区,每个区的作用是什么?

44.简述 java 垃圾回收机制?

45.Java 中垃圾收集的方法有哪些?

46.简述Java内存模型

47.简述 java 类加载机制

48.类加载器双亲委派模型机制是怎么样的?

49.为什么要有双亲委派模型?

50.什么是类加载器, 类加载器有哪些?

51.简述Java 内存分配与回收策略以及 Minor GC 和 Major GC

二、11张思维导图

1.Java概述 | 思维导图

Java概述

2.JVM内存区域 | 思维导图

JVM内存区域

3.Java垃圾收集 | 思维导图

Java垃圾收集

4.性能监控&故障处理| 思维导图

虚拟机性能监控、故障处理工具

5.调优案例分析 | 思维导图

调优案例分析

6.类文件结构 | 思维导图

类文件结构

7.类加载机制 | 思维导图

类加载机制

8.字节码执行引擎 | 思维导图

字节码执行引擎

9.程序编译与代码优化 | 思维导图

程序编译与代码优化

10.Java内存模型 | 思维导图

Java内存模型

11.Java线程 | 思维导图

Java线程

公众号

mark

免责声明:文章转载自《50+道大厂JVM面试题 + 11张思维导图就是让你懂JVM~》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Android之MVVM开发模式iOS13适配/黑暗模式的适配/KVC访问私有属性/模态弹窗ViewController 默认样式改变 /LaunchImage即将废弃/蓝牙的权限申请/推送Device Token适配/UIKit 控件变化/StatusBar新增样式下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

随便看看

前端项目里常见的十种报错及其解决办法

错误6:未标记引用错误:$isnotdefinedUncaughtReferenceError:$isnotfinedUnaughtReferenceError,如果将其更改为jsp页面,则无法找到路径。此时,它变成了一个幻影。png格式。此时,您只需将以下代码添加到文件:Picture。png解决方案:在和˂Base href=“”˃错误8:未捕获类型错误...

NodeJs使用jwt生成token以及使用express-jwt校验和解密token

=0){//当数据库有当前用户时,它返回tokenlettoken=jwt.sign;res.send}else{res.send}}catch{//p抛出异常并将其发送到错误中间件以处理console.log;next;}})//注册接口路由器。post('/register',异步(req,res,next)=˃{let{用户名,密码,昵称}=req-b...

Vue 引入 svg文件

在图标显示中,通常使用font真棒图标库,它很简单,只需下载和导入即可。重要的显示:内联块;}2.在src目录下,添加一个名为icons的文件夹,并在icons文件夹下添加索引。js文件和svg文件夹,其中svg文件存储在svg文件夹中。...

axios 学习文档

Axios是一个基于承诺的HTTP库,可以在浏览器和node.js中使用。执行POST请求axis.POST.then。接住执行多个并发请求函数getUserAccount(){returnaxios.get;}函数getUserPermissions(){returnaxios.get;}全部承诺。然后axios API可以通过传递相关配置来请求axios...

docker run hangs问题排查记录

1.故障描述过去两天遇到了一个非常奇怪的问题。现在完整的故障描述如下:1)首先,我的同事告诉我,K8S集群中的一个工作节点将其状态更改为NoReady,并且在节点kubelet_truntime的错误日志中发现了大量此类日志E060301:50:51.45511776268remote。go:332]ExecSync1f0e3ac13faf224129bc4...

MongoDB 查看集合的统计信息

--1查看集合的统计信息srs0:“size”:“ok”:可以理解为集合名称计数:集合中的文档总数大小:连续分配的数据块索引:最近分配的块的大小paddingFactor:所有索引索引的总大小大小:--2显示rs0:db。东西。stats(1024)(KB);{“ns”:“count”:“size”:“indexSize”:...