Java 技术的两种核心机制
1、Java 虚拟机(Java Virtual Machine) JVM
2、垃圾回收器(Garbage Collection) GC
Java 虚拟机(JVM)
JVM 可以理解成一个可运行 Java 字节码的虚拟计算机系统
-它有一个解释器组件,可以实现 Java 字节码和计算机操作系统之间的通信
-对于不同的运行平台,有不同 的 JVM。
JVM 屏蔽了底层运行平台的差别,实现了“一次编译,随处运行”。
垃圾回收器(GC)
-不再使用的内存空间应当进行回收-垃圾回收。
-在 C/C++等语言中,由程序员负责回收无用内存。
-Java 语言消除了程序员回收无用内存空间的责任: JVM 提供了一种系统线程跟踪存储空间的分配情况。并在 JVM 的空闲时,检查并释放那些可以被释放的存储空间。
- 垃圾回收器在 Java 程序运行过程中自动启用,程序员无法精确控制和干预
JDK
JDK(Java Development Kits)-- Java 开发工具集:
-JRE(Java Runtime Environment)Java 运行时环境:JVM 、Java API (应用程序编程接口)
-Java 编译器(javac.exe)、Java 运行时解释器(java.exe)、Java 文档化化工具(javadoc.exe)及其它工具及资源
JRE 的三项主要功能:
-加载代码:由类加载器(class loader)完成;
-校验代码:由字节码校验器(byte code verifier)完成;
-执行代码:由运行时解释器(runtime interpreter)完成。