Java类加载顺序和JVM部分概念
2018-03-30 本文已影响7人
老生住长亭
1.class加载
![](https://img.haomeiwen.com/i4034029/5a84271830ac17cd.png)
2.类加载器 :
a. 启动加载器
b. 扩展加载类
c. 应用程序加载类
3.双亲委派模式
a. 首先将自己类委派使用父类加载,父类加载再找父类加载,依次递归。如果父类加载能完成任务,则返回加载结果
b. 如果父类加载不成功,则由自己加载。
![](https://img.haomeiwen.com/i4034029/6a8d2e85fb5af38e.png)
![](https://img.haomeiwen.com/i4034029/fe4f279909612db0.png)
![](https://img.haomeiwen.com/i4034029/e62153791882c9cc.png)
ClassLoader:类使用类加载器的顺序
ApplicationClassLoader-->ExtensionClassLoader-->BootstrapClassLoader
Method Area - 类级别的数据:存储类相关的信息:静态方法,静态变量,常量池,字段的信息和方法的信息
Heap Area - 对象级别的数据,类的对象和方法的实例
Stack Area - 本地变量
PC Registers - 记录内存地址