Java虚拟机(JVM)、JDK和JRE

JVM架构

JVM工作方式:

类加载器:类加载器读取.class文件并将字节码保存在方法区域中

方法区域:JVM中只有一个方法区域,在所有类之间共享。它保存每个.class文件(类字节码)的类级别信息。

:堆是JVM内存中分配对象的一部分。JVM为每个.class文件创建一个Class对象。

堆栈:堆栈也是JVM内存的一部分,但与堆不同,堆栈用于存储临时变量

PC寄存器:跟踪已执行的指令和将要执行的指令。由于指令是由线程执行的,因此每个线程都有一个单独的PC寄存器。

本机方法堆栈:本机方法可以访问虚拟机的运行时数据区域。

本机方法接口:它允许Java代码调用本机应用程序或由本机应用程序调用。本机应用程序是特定于系统硬件和OS的程序。

垃圾回收:类实例是由Java代码显式创建的,使用后,垃圾回收会自动销毁该实例以进行内存管理。

JVM与JRE与JDK

JRE:JRE是Java虚拟机在其中运行的环境。JRE包含Java虚拟机(JVM),类库和其他文件,但开发工具(例如编译器和调试器)除外。
在JRE中运行代码,但不能在JRE中开发和编译代码。

JVM:如上所述,JVM通过使用JRE提供的类,库和文件来运行程序。

JAR:JRE提供的类,库和文件。一般我们开发项目的时候也会引用到封装的jar包。直接调用即可。

JDK:JDK是JRE的超集,它包含JRE以及开发工具(如编译器,调试器等)所包含的所有内容。

这样你就可以写java啦,哈哈哈哈。

参考链接:https://beginnersbook.com/2013/05/jvm/

猜你喜欢

转载自blog.csdn.net/Candyys/article/details/108130143