什么是JVM
定义
jvm是java程序的运行环境的一部分,也是最重要的一部分,它与操作系统直接交互,而操作系统能够操作计算机硬件,所以jvm能间接的操作计算机硬件。java代码通过编译器将其编译成字节码文件,jvm通过加载字节码文件,然后进行运行内存的申请与字节码文件中指令的解释,达到java程序运行的目的。
特性
- 跨平台。Java语言最重要的特点就是跨平台运行,使用JVM就是为了支持与操作系统无关,实现跨平台。
垃圾回收。Java程序员不需要再去考虑内存管理的问题,可以更专注于自身业务的实现。
组成
类加载器子系统
- 运行时数据区
-
jdk、jre、jvm是什么关系
JRE(Java Runtime Environment),也就是java平台。所有的java程序都要在JRE环境下才能运行。
- JDK(Java Development Kit),是开发者用来编译、调试程序用的开发包。JDK也是JAVA程序需要在JRE上运行。
- JVM(Java Virtual Machine),是JRE的一部分。它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。
JVM有自己完善的硬件架构,如处理器、堆栈、寄存器等,还具有相应的指令系统。

