美文网首页
双亲委派模型

双亲委派模型

作者: wilkSon | 来源:发表于2019-07-11 15:12 被阅读0次

为何需要双亲委派模型:

    如果你自己重写一个String类, 会发生什么?两个字:安全

JVM运行流程, JVM基本结构

类加载器双亲委派模型

classLoader源码解析

从源码分析实现自定义类加载器

 JVM的运行流程

 class字节码文件:java源程序->编译成字节码文件[ 通过javac编译 ]-> JVM [ 内存 ] ->最终保存在堆里面去了 JVM跨平台    JVM解释成本地机器指令    

jvm基本结构:

    类加载器、  执行引擎、运行时数据区、 本地接口、

    class Files -> classLoader ->运行时数据区 -> 执行引擎 -> 本地库接口 --> 本地方法库

    classLoader把class文件放到运行时数据区:

    类的装载:加载 连接(验证, 准备, 解析), 初始化类对象  实例化使用类对象 , 卸载

    类的定义或者结构 保存在堆中

    初始化:执行类的<clinit>,为静态变量赋予正确的初始值

    构造器: 构造的是class   

    1、 static变量           2、static语句               3、

构造方法, 实例化对象

类加载器就是把class对象加载到运行时数据区

双亲委派模型, 类加载的时候必须要先通过父类加载器去加载, bootstrap类加载器不是, 其他的类加载器都有父类加载器

bootstrap 启动类加载器, 其他类加载器都是继承自ClassLoader

双亲委派模型工作过程是:如果一个类加载器收到类加载的请求,它首先不会自己去尝试加载这个类,而是把这个请求委派给父类加载器完成。每个类加载器都是如此,只有当父加载器在自己的搜索范围内找不到指定的类时(即ClassNotFoundException),子加载器才会尝试自己去加载。

为什么要使用双亲委派模型 :

避免类的重复加载, 父类已经加载了,子类就没有必要再加载一次

String根类加载器去加载

classLoader

BootstrapClassLoader    ->     rt.jar  JVM内核中 用null表示

ExtensionClassLoader     ->   %javaHome%lib/ext/*.jar

AppClassLoader    -> classpath

自定义类加载器  -》 完全自定义加载路径

JVM之执行引擎:

一次性解释字节码

即时编译器

自适应优化器  一个自适应的优化器可以使得java虚拟机在80%-90%的时间里执行被优化过的代本地代码

如果您喜欢我的文章,欢迎关注我的公众号

相关文章

  • Tomcat类载入器

    大家都知道,Java的类加载机制是双亲委派模型,那么什么是双亲委派模型呢?我们这里简要的说一下,双亲委派模型...

  • java类加载破坏双亲委派模型

    前面java类加载器与双亲委派模型中提到Java采用个双亲委派的方式来完成类加载,但是双亲委派模型并不是一个强制的...

  • Java 类加载

    双亲委派模型 并非强制 而是推荐 SPI 父类加载器需要子类加载器加载类 打破双亲委派模型 https://www...

  • sandBox源码分析之ClassLoader

    提起classLoader,就不由自主想起了java classLoader的双亲委派模型,那么到底什么是双亲委派...

  • 双亲委派模型

    一、类加载器简介:JVM启动时,会形成由三个类加载器组成的初始类加载器层次结构: Bootstrap ClassL...

  • 双亲委派模型

    一、为什么要用这种模型 保证相同的字节码文件不被重复加载 二、利用双亲委派模型加载类的过程 java.lang.C...

  • 双亲委派模型

    jdk1.2后 虚拟机 的类加载器 使用的就是双亲委派模型; 主要有三种加载器: 1:Bootstrap clas...

  • 双亲委派模型

    类与类加载器 类加载器非常重要,因为每个类加载器都有一个独立的类名称空间。比如我们要加载两个类,如果要比较两个类是...

  • 双亲委派模型

    为何需要双亲委派模型: 如果你自己重写一个String类, 会发生什么?两个字:安全 JVM运行流程, JVM基本...

  • 双亲委派模型

    首先说一说什么是类和类加载器 1.类(Class) 我们在编写代码时,创建的每个“*.java”文件都可以认为是一...

网友评论

      本文标题:双亲委派模型

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