0
点赞
收藏
分享

微信扫一扫

【随笔】JVM核心:JVM运行和类加载

前言

本篇博客将写一点关于JVM的东西,涉及JVM运行时数据区、类加载的过程、类加载器、ClassLoader、双亲委派机制、自定义类加载器等,这些都是博主自己的一点理解,如果有误,欢迎大家评论拍砖~


关于JVM运行时数据区


关于类加载

加载:在方法区形成类的运行时数据结构;在堆里面形成该类的Class对象,作为访问方法区的入口。

链接:class文件是否存在问题;一些符号引号替换成直接引用。

初始化:初始化一个类,先初始化它的父类。虚拟机会保证一个类的初始化在多线程环境中被正确加锁和同步。


关于类加载器

类加载器的层次结构


关于java.lang.ClassLoader

ClassLoader的组合模式

demo:

ClassLoader重要API


类加载器的代理模式:双亲委派机制

双亲委派机制不是唯一的选择


写一个自定义类加载器

MyClassLoader:

重写findClass:

Test:


好了,关于JVM运行和类加载的过程就写到这里,^_^

2017.10.29 zhangfengzhe

举报

相关推荐

0 条评论