全面&详细的面试指南:Java虚拟机(JVM)篇 (附答案)

Posted Carson带你学Android

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了全面&详细的面试指南:Java虚拟机(JVM)篇 (附答案)相关的知识,希望对你有一定的参考价值。

面试考察点

  • Java虚拟机(JVM)内存结构
  • Java对象常见活动:创建、内存布局、访问定位、如何判断存活
  • 垃圾收集相关:垃圾收集算法、垃圾收集器
  • 类加载相关:类加载过程、类加载器
  • 方法分派模型:静态分派、动态分派


考察点1:Java虚拟机(JVM)内存结构

Java虚拟机在运行Java程序时,会管理着一块内存区域:运行时数据区。这里考察的内容是:

  • 内存模型 & 分区具体有哪些
  • 每个分区的作用、存放的内容是什么
  • Java堆分区内的新生代、老年代划分内存比例及其各自的特点是什么

上述问题的答案,具体请看文章:Carson带你学JVM:图文解析Java虚拟机内存结构


考察点2:Java对象常见活动

主要考察Java对象在底层的一些常见活动,主要包括:

  • 一个Java对象是如何被创建的?即Java对象的创建过程。
  • 在 Java 对象创建后,是如何被存储在Java内存里的?即Java对象的内存布局。
  • 当建立了一个Java对象后,该如何访问到该对象?即Java对象的访问定位。
  • 如何判断Java对象是否存活?即**Java对象的存活准则,**包括:引用计数法、引用链法(可达性分析法)的具体相关内容。

上述问题的答案,具体请看文章:


考察点3:垃圾收集相关

主要包括:垃圾收集算法、垃圾收集器

1. 垃圾收集算法

不同的内存区域采用不同的垃圾收集算法,而不同垃圾收集算法决定了垃圾收集的效率 & 效果。主要考察点包括:

  • 垃圾收集算法有哪些类型?
  • 每种垃圾收集算法的原理、特点、应用场景分别是什么?
  • Minor GC 与 Full GC 分别在什么时候发生?
  • 如果需要优化垃圾收集方法,有什么方向及思路?

上述问题的答案,具体请看文章:Carson带你学JVM:这是一份全面 & 详细的垃圾收集算法(GC)讲解攻略

2. 垃圾收集器

垃圾收集器是垃圾收集算法的具体实现,考察的内容包括:

  • 常见的垃圾收集器有哪些?
  • 不同类型的垃圾收集器其优点、缺点是什么?
  • CMS收集器跟G1收集器有什么了解?它们的特点分别是什么?

上述问题的答案,具体请看文章:Carson带你学JVM:常见的垃圾收集器学习指南


考察点4:类加载

即Java类是如何被加载的。这里主要考察的内容是:

  • 类加载的本质是什么?
  • 类加载的过程有哪些步骤?
  • 类加载的每个步骤及作用具体是什么?
  • 如何确定被加载类在Java虚拟机的唯一性?
  • 类加载器有哪些类型?分别负责加载哪种类型的类?
  • 如何自定义一个类加载器
  • 双亲委派模型具体指的是什么?请阐述其工作流程。

上述问题的答案,具体请看文章:


考察点5:方法分派

方法分派即指:确定执行哪个方法的过程。这里主要考察的内容是:

  • 方法分派的类型有哪些?
  • 如何理解:变量的静态类型 & 动态类型
  • 静态分派及动态分派的定义、特点、应用场景及区别

上述问题的答案,具体请看文章:Carson带你学JVM:方法分派模型-静态分派、动态分派


至此,关于面试指南中的Java虚拟机(JVM) 篇讲解完毕。下面我会对面试内容继续进行讲解,欢迎关注Carson_Ho的CSDN博客


请点赞!因为你的鼓励是我写作的最大动力!

以上是关于全面&详细的面试指南:Java虚拟机(JVM)篇 (附答案)的主要内容,如果未能解决你的问题,请参考以下文章

全面&详细的面试指南:Java虚拟机(JVM)篇 (附答案)

全面&详细的面试指南:Java虚拟机(JVM)篇 (附答案)

Carson带你学JVM:这是一份全面 & 详细的JVM学习指南

Carson带你学JVM:这是一份全面 & 详细的JVM学习指南

全面&详细的面试指南:操作系统篇 (附答案)

全面&详细的面试指南:操作系统篇 (附答案)