zoukankan      html  css  js  c++  java
  • java 类加载过程

    Class加载过程

    class load 进内存 分三步 :

    loading 加载

    将class文件加载到内存

    linking 连接

    verification

    校验加载进内存的class是否符合jvm规范

    preparation

    将class文件的静态变量赋默认值 如果 int = 0 long = ol String = null 之类的

    resolution

    将符号引用转换为直接引用

    initializing 初始化

    将class文件静态变量赋初始值 调用静态代码块

    双亲委派原则

    1 Bootstrap 顶级类加载器 lib/rt.jar

    2 Extension 扩展类加载器 jre/lib/ext/*.jar

    3 App classpath 类加载器 classpath

    4 Custom 自定义类加载器

    基于双亲委派原则的类加载过程 :

    当需要加载一个类的时候 由低到高往上找 看有没有已经加载过的 如果有已经加载了的 直接拿来用

    如果找到bootstrap类加载器 都没有加载过 就由高到底去尝试加载 如果可以加载 就直接加载并且返回 反之 继续往下尝试

    其实双亲委派是写在loadClass方法中的 调用parent的loadClass()

  • 相关阅读:
    死锁篇
    java线程池
    sql server 多行数据指定字符串拼接
    动态提交 表格
    ABP
    DDD学习
    sql 语句插入数据返回id
    Post方式提交,通过上下文HttpContext,Request[""]获取
    JQ的过滤隐藏
    sql 查询有多少行
  • 原文地址:https://www.cnblogs.com/self-crossing/p/12658095.html
Copyright © 2011-2022 走看看