最新刚出来的JVM(面试题+笔记+导图),以后大厂面试JVM不是问题
前言
作为进军Java行业的程序员来说,对JVM一定是众所周知的,尤其是在IT行业,用JVM的使用是比较多的。对去面试的程序员说,JVM又是面试中一定会问到的重点,是个程序员都想去大厂,然后没想到的是部分程序员因为JVM没有面试通过,怎么说呢,其实JVM说难也不是难,说不难也难,得看自己怎么去学习,今天为大家准备这份JVM的总结,帮助你去更进一步的了解,面试也不怕JVM了。
注意:关于JVM的内容整理,包括了面试题、学习笔记、使用文档几个部分。
01、JVM面试题集合
1.1 JVM 面试题(一):
内存模型以及分区,需要详细到每个区放什么
堆里面的分区:Eden,survival (from+ to),老年代,各自的特点
对象创建方法,对象的内存分配,对象的访问定位
GC 的两种判定方法:
SafePoint 是什么
GC 的三种收集方法:标记清除、标记整理、复制算法的原理与特点,分别用 在什么地方,如果让你优化收集方法,有什么思路?
GC 收集器有哪些?CMS 收集器与 G1 收集器的特点。
Minor GC 与 Full GC 分别在什么时候发生?
几种常用的内存调试工具:jmap、jstack、jconsole、jhat
类加载的几个过程:
JVM内存分哪几个区,每个区的作用是什么?
如何判断一个对象是否存活?(或者GC对象的判定方 法)
简述java垃圾回收机制?
java中垃圾收集的方法有哪些?
java内存模型
java类加载过程?
简述java类加载机制?
什么是类加载器,类加载器有哪些?
简述java内存分配与回收策略以及Minor GC和 Major GC
描述一下 JVM 加载 Class 文件的原理机制?
垃圾回收器的基本原理是什么?垃圾回收器可以马上回收内存吗?
有什么办法主动通知虚拟机进行垃圾回收?
1.2 JVM面试题(二):
JVM内存区域
程序计数器线程私有)
虚拟机栈线程私有)
本地方法区线程私有)
堆(Heap-线程共享)
方法区/永久代(线程共享)
JVM运行时内存
新生代
Eden区
ServivorFrom
ServivorTo
MinorGC的过程(复制->清空->互换)
eden、servicorfrom复制到ServicorTd
清空eden、servicorFrom
ServicorTo和IServicorFrom互换
1.3 JVM 面试题(三):
GC分代收集算法VS分区收集算法
分代收集算法
在新生代复制算法
.在老年代标记整理算法
分区收集算法
GC垃圾收集器
Serial垃圾收集器(单线程、复制算法)
ParNew垃圾收集器( Serial+多线程)
Parallel Scavenge收集器(多线程复制算法、高效)
Serial Old收集器(单线程标记整理算法)
Parallel Old收集器(多线程标记整理算法)
CMS收集器(多线程标记清除算法)
初始标记
并发标记
重新标记
并发清除
启动类加载器(Bootstrap ClassLoader)
扩展类加载器(Extension ClassLoader)
应用程序类加载器(Application ClassLoader):
双亲委派
JVM面试答案与解析:
02、关于JVM的实际使用
2.1JVM性能调优
基础篇:
什么是 JVM ?、JVM 由哪些部分组成?、类加载器是有了解吗?、类加载器是如何加载 class 文件的?、双亲委派模型(Parent Delegation Model)?
性能优化篇:
JVM的运行参数、三种参数类型、常用的性能评价/测试指标、常用的性能优化手段、应用服务性能优化
JVM的体系结构和执行过程篇:
何谓 JVM、1.2 JVM 体系结构详解、机器如何执行代码、 JVM 为何选择基于栈的架构、执行引擎的架构设计、 执行引擎的执行过程、JVM 方法调用栈
03、关于学习 JVM的思维脑图(Xmind)
JVM脑图(Xmind)
文件结构、类加载、垃圾回收、Java字节码执行引擎、JKD性能监控于故障处理、JVM服务器实战调优
总结
总而言之,学习是自己的事,作为开发人员,JVM是必须要掌握的,如果拥有大厂梦,基础可不能太差,如果你对JVM还有很多不解问题,那么这份JVM总结大礼包一定要拥有!
需要高清完整版《JVM学习资源大礼包》的朋友请点击链接这份JVM总结大礼包来获取!!