类加载机制

类的加载机制与类加载的理解

  1. 加载:将class字节码文件加载到内存中并将静态数据转换成方法区的运行时数据结构,然后生成一个代表类的对象。
  2. 链接:将java的二进制代码加载到JVM运行状态的过程 有三步
    • 验证:确保加载的二进制代码符合虚拟机的规范
    • 准备:为类变量(static)分配内存,并设置类变量默认初始值,这些都在方法区中进行分配
    • 解析:虚拟机将符号引用(常量名)替换为直接引用(地址)的过程
  3. 初始化:
    • 执行()方法。类构造器()方法是由编译期自动收集类中所以的变量的赋值动作还有静态代码块加载的代码
    • 当初始化一个类的时候,如果发现还没有初始化父类,需要先初始化父类
    • 虚拟机会保证一个类的()方法在对多线程中被正确加锁和同步。
posted @ 2021-04-03 16:28  W·EN  阅读(43)  评论(0)    收藏  举报