- jvm是内存中的虚拟机,存储在内存
Java虚拟机:

Class Loader : 根据特定格式,加载Class文件到内存
Runtime Data Area:JVM内存空间结构模型
Execution Engine:对命令进行解析
Native Interface(本地接口):融合不同开发语言的原生库给Java用
-
步骤
- 首先.Class文件通过Class Loader 加载内存,在由给Execution Engine解析class文件里对字节码交给操作系统去执行。
Native Interface 举例
Class.forName 作用:返回与给定的字符串名称相关联的类或接口的Class对象
@CallerSensitive
public static Class<?> forName(String className)
throws ClassNotFoundException {
Class<?> caller = Reflection.getCallerClass();
return forName0(className, true, ClassLoader.getClassLoader(caller), caller);
}
forName0:
private static native Class<?> forName0(String name, boolean initialize,
ClassLoader loader,
Class<?> caller)
throws ClassNotFoundException;
此处native接口 为Native Interface(本地接口)
本文深入探讨了Java虚拟机(JVM)的内部运作机制,包括Class文件如何通过ClassLoader加载到内存,JVM内存空间结构模型,以及ExecutionEngine如何解析字节码并执行。同时,介绍了NativeInterface的作用,通过具体实例解释了Class.forName方法的工作流程。
785

被折叠的 条评论
为什么被折叠?



