JVM、JRE、JDK有什么区别
JVM是java虚拟机,负责将字节码解释或编译为本地机器代码,并在运行时提供必要的支持,比如内存管理、垃圾回收等等
JRE是java运行时环境,包括了jvm、核心类库和其他支持运行java程序的文件。
JDK是用于开发Java程序的完整运行环境,包含了JRE,以及用于开发、调试和监控java应用程序的工具。
Java从编译到执行,经过了哪些步骤?
- 我认为就4个步骤:编译->加载->解释->执行。编译:将源码文件编译成JVM可以解释的class文件。编译过程会对源代码程序做 「语法分析」「语义分析」「注解处理」等等处理,最后才生成字节码文件。比如对泛型的擦除干的。
- 加载:class文件加载到JVM中,加载又可以分为加载、连接、初始化
- 解释:JVM通过解释或者编译将字节码转换为机器码
- 执行:最后操作系统把解释器解析出来的机器代码,调用系统的硬件执行最终的程序指令
大约 37 分钟