zoukankan      html  css  js  c++  java
  • 类加载过程-《java高并发编程详解》第九章 重点记录

    本章主要是讲列的加载过程,class文件是如何被JVM加载并且最后得以运行的。


    类的加载过程一般分为三个大阶段,加载阶段、连接阶段、初始化阶段

     

    ----加载阶段:主要负责查找并且加载类的二进制数据文件(class文件)。

    ----连接阶段:连接阶段还可以分为验证、准备、解析阶段。

    1. 验证:确保类文件的正确性,class的版本,class文件的魔术因子是否正确
    2. 准备:为类的静态变量分配内存,并且为其初始化默认值
    3. 解析:类中的符号引用转换为直接引用

    ----初始化阶段:为类的静态变量赋予正确的初始值(代码编写给的值)


    jvmjava虚拟机在我们执行java命令启动后,可能有很多的类,每个类不一定都会初始化。jvm对类的初始化使用了lazy方式的延迟机制,当一个类在首次使用的时候才会被初始化,在一个运行时包下一个类只会被初始化一次。运行时包和类的包有区别。

  • 相关阅读:
    事务隔离级别
    手机摄影之生活拍照技巧
    html.unescape(s)
    正则表达式编译和DOTALL小结
    重试模块==>retrying
    js逆向==>js2py
    mysql索引设计原则
    Django请求与响应
    Linux常用命令
    C++11 auto_ptr 的问题
  • 原文地址:https://www.cnblogs.com/lhh666/p/12809103.html
Copyright © 2011-2022 走看看