JVM架构图
JVM 架构图如下:
类加载器
双亲委派机制
- 当类加载器收到加载请求
- 将这个类加载请求委托给父类加载器去完成,一直向上委托,直到根加载器(启动类加载器)
- 启动类加载器检查是否能加载这个类,能加载就结束,使用当前的类加载器,否则抛出异常(Class not found),通知子类加载器加载
- 重复步骤3
native
使用 native 关键字修饰的 java 方法,表示已超出 java 的作用域范围,会调用 C 语言库。
进入本地方法栈
调用本地方法接口 JNI
JNI 的作用是扩展 Java 的使用,融合不同的编程语言为 Java 所用
方法区
方法区被所有线程共享,所有字段和方法字节码,以及一些特殊方法,如构造函数,接口也在此定义,简单说,所有定义的方法的信息都保存在该区域,此区域属于共享区间。
参考资料:
狂神说,双亲委派机制:https://www.bilibili.com/video/BV1iJ411d7jS?p=3&spm_id_from=pageDriver
All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.