美文网首页
JVM结构图、类加载器的种类、双亲委派机制

JVM结构图、类加载器的种类、双亲委派机制

作者: i小雨 | 来源:发表于2021-01-27 14:04 被阅读0次
图片.png

类装载器ClassLoader

负责加载class文件,class文件在文件的开头有特定的文件标示“cafe babe”,将class文件的字节码内容加载到内存中,并将这些内容转换成方法区中的运行时数据结构。

类加载器的种类:

1、启动类加载器(Bootstrap)C++写的
2、扩展类加载器(Extension)JAVA
3、应用程序类加载器(AppClassLoader)也叫做系统类加载器,加载当前应用的classpath下的所有类。
4、用户自定义加载器:
Java.lang.ClassLoader的子类,用户可以定制类的加载方式。

图片.png
/**
 * @author :yuanyong
 * @date :2021/1/27 11:41
 * @description:
 */
public class MyObject {

    public static void main(String[] args) {
        System.out.println(MyObject.class.getClassLoader());
        System.out.println(MyObject.class.getClassLoader().getParent());
        System.out.println(MyObject.class.getClassLoader().getParent().getParent());
    }
}
****************************************************
sun.misc.Launcher$AppClassLoader@18b4aac2
sun.misc.Launcher$ExtClassLoader@1b6d3586
null

BootStrapClassLoader 是一个纯的C++实现,没有对应的Java类。所以在Java中是取不到的。如果一个类的classloader是null。已经足可以证明他就是由BootStrapClassLoader 加载的

双亲委派机制:

图片.png
双亲委派机制的好处:
  • 主要是为了安全性,避免用户自己编写的类动态替换Java的一些核心类,比如String
  • 同时也避免了类的重复加载,因为jvm中区分不同的类,不仅仅是根据类名,相同的class文件被不同的classloader加载就是不同的两个类。

相关文章

  • Java虚拟机

    JVM 组成部分 类加载器 执行引擎 内存区 本地方法调用 类加载器 双亲委派模型 类的加载过程采用双亲委派机制,...

  • 关于Java类加载双亲委派机制的思考(附面试题)

    预定义类加载器和双亲委派机制 JVM预定义的三种类型类加载器: 启动(Bootstrap)类加载器:是用本地代码实...

  • java类的加载机制

    概念 类的生命周期 类加载器 jvm类加载机制 类的加载方式 双亲委派模式

  • JAVA类加载机制

    jvm之java类加载机制和类加载器(ClassLoader)的详解java类加载机制:全盘负责、双亲委派、缓存机...

  • JVM——类加载机制

    前言 今天就来介绍类的加载机制以及双亲委派机制。 JVM 类加载机制 JVM 类加载的五个阶段 JVM 类加载机制...

  • Java面试 常见jvm相关问题的解答

    1.什么是类加载器?类加载器有哪些?描述一下 JVM 加载 Class 文件的原理机制?类加载器双亲委派模型机制?...

  • JVM 预定义类加载器 和 双亲委派机制

    原文 - 关于Java类加载双亲委派机制的思考 JVM 预定义的三种类型类加载器: 注:我们平时自己定义的类就是在...

  • 四、初识ClassLoader

    双亲委派的定义 类加载器的父亲委托机制(双亲委派机制) 类加载器加载一个类时,会优先交给其父的加载器加载,父加载器...

  • 为什么使用双亲委派机制?

    为什么使用双亲委派机制? 专业名词 说双亲委派机制就不得不说类加载器。 引导类加载器:加载%JAVA_HOME%/...

  • 3.手写自己的java类加载器

    类的加载过程?何为双亲委派机制?为啥这么设计?实现一个自己的类加载器?如何打破双亲委派机制? 1.类加载器 jar...

网友评论

      本文标题:JVM结构图、类加载器的种类、双亲委派机制

      本文链接:https://www.haomeiwen.com/subject/krnozktx.html