问题:
1)请谈谈你对JVM的理解?java8的虚拟机有什么更新?
2)什么是OOM?什么是StackOverflowError?有哪些方法分析?
3)JVM的常用参数调优你知道哪些?
4)内存快照抓取和MAT分析DUMP文件知道吗?
5)谈谈JVM中,对类加载器你的认识?
要回答这些问题,需要对Java虚拟机有一个清晰的认识,首先就是要清楚JVM的体系结构,其次是JVM各组成部分的作用以及运行机制。
JVM体系结构概述
JVM基本概念:JVM运行在操作系统之上,是一个可以运行java代码的虚拟计算机;对于不同的平台,有不同的虚拟机,其屏蔽了底层运行平台的差别,实现了“一次编译,导出运行”。
- JVM是可运行Java代码的假想计算机 ,包括一套字节码指令集、一组寄存器、一个栈、一个垃圾回收,堆 和 一个存储方法域。
- JVM是运行在操作系统之上的,它与硬件没有直接的交互。
要清楚Java虚拟机的体系结构,首先要清楚JVM在整个系统环境中的位置:
首先,是JDK、JRE与JVM:
- JDK(Java Development Kit,Java开发工具包):
- 包含JRE以及一些开发工具,面向开发人员使用(开发用的)
- JRE(Java Runtime Environment,Java运行时环境):
- 包含JVM以及一些核心的运行类库,面向运行人员使用(运行用的)
- JVM(Java Virtual Machine, Java 虚拟机):
- 包含字节码等核心内容(核心所在,跨平台的关键)

其次是JVM、操作系统与硬件体系的关系:
- 包含字节码等核心内容(核心所在,跨平台的关键)
- JVM是运行在操作系统之上的,它与硬件没有直接的交互
- JVM的存在正式Java语言跨平台特性的体现

最后,JVM的体系结构包括哪些?

JVM体系结构包括:
- 1)类装载器子系统:装载具有适合名称的类或接口
- 2)执行引擎:负责执行包含在已装载的类或接口中的指令
- 3)运行时数据区:方法区、堆、栈、本地方法栈、程序计数器
先对JVM的体系结构做一个大致的介绍,此后我会对体系中的每个部分作出详细介绍。
本文探讨了JVM的基本概念和体系结构,包括JVM在系统环境中的位置,JDK、JRE与JVM的区别,以及JVM与操作系统、硬件的关系。JVM的组成部分包括类装载器子系统、执行引擎和运行时数据区,如方法区、堆、栈、本地方法栈和程序计数器。
86万+

被折叠的 条评论
为什么被折叠?



