JVM虚拟机学习 - 初次见面
JVM虚拟机一
JDK JRE JVM
JDK JRE 和 JVM之间是什么关系?
JDK是提供给Java开发人员使用的,包含了Java的开发工具,也包括了JRE。JRE是JDK的子集,JRE提供了库,Java虚拟机和其他组件。JVM可以理解为一个虚拟出来的计算机,它主要负责把Java程序生成的字节码文件解释成具体系统平台的机器指令,让程序在各个平台运行。
JDK是什么
jdk包含了jre,Java开发,调试,监视应用程序的工具。
JDK的目录结构和作用:
JDK会有jdk和jre两个文件夹,
-jdk
--bin : 包含了可执行文件,java.exe javac.exe javadoc.exe
--db : 内置了Derby数据库,体积小,免安装
– include: Java和JVM交互的头文件
-jvm
– bin
— server jvm.dll 这个文件就是JVM程序
1. Java实现跨平台的最核心内容,运行Java程序编译后的.class文件。
2. JVM解释class文件需要调用类库lib。
3. jvm.dll并不能独立工作,启动后,需要explicit方法来载入辅助动态链接库一起执行。
JDK包含的重要组件:
java - 运行工具,运行.class的字节码
javac - 编译器,将.java编译为.class的字节码
javap- 反编译程序
javadoc - 从注释中提取文档,但是需要注释符合规范
jar - 打包工具
jdb - debugger,调试工具
jps - 显示当前Java运行的进程状态
JRE是什么
Java程序运行时的环境,解释执行Java代码。
jre的目录结构:
-jre
– bin:java.exe,存在java命令,但是没有javac命令,说明jre是没有编译能力,只有解释执行的能力。
– lib :Java的基础和核心类库
JVM是什么
运行Java字节码的机器,JVM也是一种规范。
JVM为Java的“Write Once Run Anywhere”提供了一个不依赖底层操作系统和机器硬件结构的运行环境。
Client模式,Server模式是什么
Client模式:加载速度比较快
Server模式:加载速度比较慢,但是运行起来比较快。可以运行服务器后台程序 。
JVM的结构和执行器:
简单说明一下JVM的结构和执行器:
ClassLoader:类装载器用于加载类文件;主要功能是加载,链接,初始化。
JVM Memory Areas : Java内存区域,包含了堆,栈,方法区,程序计数器。
Interpreter:解释器将class文件解释为本地机器码,交给CPU执行。
JIT Compiler:JIT及时编译器,是一种优化策略,将一段热点代码编译为机器码执行。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· .NET Core 中如何实现缓存的预热?
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统
· 【译】Visual Studio 中新的强大生产力特性