jvm如何加载 .class文件

jvm虚拟机主要包括四个部分:Class Loader ,Runtime Data Area ,Execution Engine,Native Interface

Class Loader:依据特定格式将.class文件加载进内存

Execution Engine:对命令进行解析

Native Interface:融合不同开发语言的原生库为java所用

Runtime Data Area:jvm内存空间结构模型

 

ClassLoader在java中有着非要重要的作用,它主要工作在Class装载的加载阶段,其主要作用是从系统外部获得Class二进制数据流,它是java的核心组件,所有的Class都是由ClassLoader进行加载的,ClassLoader负责将Class文件里的二进制数据流装载进系统,然后交给java虚拟机进行连接,初始化等操作。

 

ClassLoader的种类:

BootStrapClassLoader:c++编写,加载核心库java.*

ExtClassLoader:java编写,加载拓展库javax.*  (java.ext.dirs)

AppClassLoader:java编写,加载程序所在目录

自定义ClassLoaader:java编写,定制化加载

posted @ 2019-12-26 15:28  threadThread  阅读(431)  评论(0)    收藏  举报