Java 的JVM简介
JVM是(Java Virtual Machine)Java虚拟机的缩写。
JVM是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。
在Java程序运行时,所有的.class类需要加载到JVM中才能执行代码逻辑。不是直接和操作系统交互,需要jvm通过java类库解释给操作系统。
类加载器 ClassLoader
用来查找和加载Class文件到Java虚拟机内存中,并将这些静态数据转换成方法区运行时数据结构,然后在堆中形成代表这个类的Class对象,作为方法区中类数据的访问入口。
类加载器所做的工作实质是把类文件从硬盘读取到内存中。
Java中类加载器主要分为两种,即系统类加载器和自定义类加载器。其中系统类加载器包括3种,分别是Bootstrap ClassLoader、Extensions ClassLoader和Application ClassLoader。
- 引导类加载器(Bootstrap ClassLoader):用C语言实现无法被Java代码访问。负责JDK核心库,比如java.lang、java.util等。
- 拓展类加载器(Extension ClassLoader):负责系统类额外功能,如jar包。<